diff --git a/debug/classic.csv b/debug/classic.csv
index f2a88c57248be07997b4312dc7d65bfdb7da9c29..f345f7c6d371cadd94ef36943f7857cdbc07a222 100644
--- a/debug/classic.csv
+++ b/debug/classic.csv
@@ -1,121 +1,81 @@
 start_node,target_node,query_time,trip_time,nodes,edges,charging_stations,dijkstra_rank
-278788097,278788064,3.6123998143011704e-05,2.544455887440966,513591,775628,921,4
-1974276840,304743827,4.0936000004876405e-05,5.468344830265442,513591,775628,921,4
-4379640612,251721242,4.584600173984654e-05,4.400673382656193,513591,775628,921,4
-7052016254,7052035885,4.489799903240055e-05,4.910422549620248,513591,775628,921,4
-297358502,296505210,4.975599949830212e-05,6.006005554923204,513591,775628,921,4
-4001179266,279803170,4.0498998714610934e-05,6.787909702485399,513591,775628,921,4
-370260513,15934136,3.024999750778079e-05,3.6488563422704834,513591,775628,921,4
-253688476,253688478,4.657600220525637e-05,5.102975420893581,513591,775628,921,4
-670244222,670244208,4.483399970922619e-05,2.8777689306919836,513591,775628,921,4
-295812797,1186947550,4.6608998673036695e-05,2.305732311136417,513591,775628,921,4
-2092158041,110968707,3.09450006170664e-05,10.348220071064414,513591,775628,921,4
-1019862577,310740297,5.166999835637398e-05,3.1150150790654334,513591,775628,921,4
-1596409452,21349599,2.5798999558901414e-05,6.226881406984204,513591,775628,921,4
-3629862160,35341595,4.756199996336363e-05,4.243324937022972,513591,775628,921,4
-5116240898,5116240897,3.0107003112789243e-05,1.7214481834825603,513591,775628,921,4
-9201751,9193591,4.026600072393194e-05,10.338578998313869,513591,775628,921,4
-325718780,1398513311,3.746799848158844e-05,7.194162255941293,513591,775628,921,4
-384931335,384931529,2.9496000934159383e-05,7.172397044818459,513591,775628,921,4
-3655203260,3655203230,4.6779998228885233e-05,26.340009684234197,513591,775628,921,4
-1772688730,1772688731,4.06340004701633e-05,1.8021178538349452,513591,775628,921,4
-3779253653,21605682,3.820599886239506e-05,6.440256144606137,513591,775628,921,16
-3442894702,1288303198,8.64629982970655e-05,10.174488131976736,513591,775628,921,16
-2734232768,1368463837,7.194700083346106e-05,24.979432711128094,513591,775628,921,16
-324460984,324460952,8.43620000523515e-05,34.855892541880934,513591,775628,921,16
-1388209924,1376143875,7.31250001990702e-05,23.369454475567824,513591,775628,921,16
-3296257345,33024617,5.04890012962278e-05,73.35269873617314,513591,775628,921,16
-21516057,21516060,6.770400068489835e-05,44.07024744026253,513591,775628,921,16
-4278663465,31927910,6.415900134015828e-05,17.381704300263863,513591,775628,921,16
-7010426275,7010426240,7.610299871885218e-05,11.550300725435491,513591,775628,921,16
-4451772155,2151728158,8.008000077097677e-05,21.968863349225796,513591,775628,921,16
-530230113,5220432715,6.3292001868831e-05,17.91782716089565,513591,775628,921,16
-995959176,996113704,6.185500024002977e-05,65.0727740633652,513591,775628,921,16
-281260920,2799020208,7.42839984013699e-05,36.80301813801878,513591,775628,921,16
-560149740,2337055488,7.689500125707127e-05,40.163722333537585,513591,775628,921,16
-1978950983,111007577,5.8395999076310545e-05,62.312263177665606,513591,775628,921,16
-82533584,82533589,0.00010228799874312244,22.531355395225866,513591,775628,921,16
-367526344,322828416,0.00014162099978420883,26.592301250432616,513591,775628,921,16
-2088441607,296969297,0.00010998300058417954,50.33670383622816,513591,775628,921,16
-1844442623,357475749,0.000112900001113303,62.81023925748234,513591,775628,921,16
-1028144237,1056964046,9.897800191538408e-05,68.73549942625228,513591,775628,921,16
-3220840672,201851149,0.0001950309997482691,174.32355211015434,513591,775628,921,64
-36748523,2388848,0.00019567200070014223,121.32580835738597,513591,775628,921,64
-3130347756,3130347329,0.0002424809972580988,108.27118302141959,513591,775628,921,64
-1547069810,411133732,0.0001613509994058404,256.40308180241857,513591,775628,921,64
-3597248342,1674603507,0.00023229100042954087,34.85652333729989,513591,775628,921,64
-3790253212,59975819,0.00016300100105581805,107.86232786378116,513591,775628,921,64
-2895826757,297507303,0.00016575200061197393,107.45826802804294,513591,775628,921,64
-1736934595,20966465,0.00017126899911090732,159.1639460794961,513591,775628,921,64
-319615593,2518878954,0.00023569699988001958,43.45869902592796,513591,775628,921,64
-5002927891,3754266159,0.00021129200104041956,57.98113603320815,513591,775628,921,64
-2579137172,5063570813,0.0002142390003427863,61.5366358276483,513591,775628,921,64
-312763593,134701949,0.00022530500064021908,108.1307587387181,513591,775628,921,64
-3369654275,1473378283,0.000288334002107149,109.99002882889786,513591,775628,921,64
-249633765,249633758,0.00024689299971214496,47.61533465071713,513591,775628,921,64
-4291056236,4291055580,0.0001970149969565682,261.1600903088694,513591,775628,921,64
-1637802213,320226813,0.00026519899984123185,28.070885122314884,513591,775628,921,64
-616611038,2583559409,0.0002618830003484618,37.246881034372066,513591,775628,921,64
-36318594,11666598,0.00024141800167853944,44.57229612596537,513591,775628,921,64
-383521,5095604737,0.00019654999778140336,174.0467542346948,513591,775628,921,64
-2068590974,318895208,0.0002688839995244052,36.21930872762024,513591,775628,921,64
-3247535208,25626731,0.0004903619992546737,634.8937297982908,513591,775628,921,256
-461546,653603498,0.0005161930021131411,881.3305760058632,513591,775628,921,256
-581195,581141,0.0004575650018523447,695.575903128425,513591,775628,921,256
-979225594,6783606326,0.0004905160021735355,432.4076961369738,513591,775628,921,256
-26261827,410452925,0.0007324520011025015,71.44640860941952,513591,775628,921,256
-2143163767,470897387,0.0005068809987278655,172.57630372344587,513591,775628,921,256
-1448902129,33958260,0.0004416499978106003,966.3231357738559,513591,775628,921,256
-509267256,508577799,0.00042274699808331206,333.6962081339936,513591,775628,921,256
-530798414,82538716,0.0005942719981248956,490.2426858850804,513591,775628,921,256
-3594887294,1664388881,0.0006805939992773347,173.17787222910795,513591,775628,921,256
-1444721834,2083020058,0.0006834269988758024,123.41660204450442,513591,775628,921,256
-453231089,600514464,0.0007116740016499534,80.29099386719858,513591,775628,921,256
-515323,77924156,0.000465983001049608,869.837002491225,513591,775628,921,256
-34004398,260977399,0.0005460020001919474,237.7417902569312,513591,775628,921,256
-346932262,3129578003,0.0007214979996206239,98.94681154802963,513591,775628,921,256
-319048125,287464702,0.0007328450010390952,104.10802402818534,513591,775628,921,256
-3556528925,357489219,0.0006546719996549655,136.23245421330063,513591,775628,921,256
-139541,293536918,0.0004627560010703746,770.2121702120756,513591,775628,921,256
-2131942265,2071408447,0.0006551229998876806,164.71708692338362,513591,775628,921,256
-2600312295,323125728,0.0006524159980472177,225.57100183204827,513591,775628,921,256
-319442900,2887934658,0.0024950549995992333,407.2932625146748,513591,775628,921,1024
-32008898,268772387,0.0015889329988567624,2803.148662897562,513591,775628,921,1024
-1111574411,6767508665,0.0015920830010145437,2625.511934495633,513591,775628,921,1024
-1969643540,14001867,0.001886399000795791,2293.8522997773557,513591,775628,921,1024
-1885077335,456744,0.0018805790023179725,1770.0419997862678,513591,775628,921,1024
-60263679,2489316973,0.0026386400022602174,444.55292443906046,513591,775628,921,1024
-3738929332,6560433799,0.0016814640002849046,3274.6931931857334,513591,775628,921,1024
-49874983,3674012436,0.001833171998441685,2070.5750652362267,513591,775628,921,1024
-5119369026,1940161211,0.0027592480000748765,410.0405387921802,513591,775628,921,1024
-6551313413,7049979601,0.0023089040005288552,2374.7962222547726,513591,775628,921,1024
-3071384878,306251709,0.0026317410010960884,435.8936768859933,513591,775628,921,1024
-1485262466,1482777851,0.0017236380008398555,1929.423503079553,513591,775628,921,1024
-134697348,303266729,0.002748591999989003,115.17308427261189,513591,775628,921,1024
-2362354369,3740059705,0.0027479170021251775,301.2279449750924,513591,775628,921,1024
-5116240907,5119483566,0.0016262169992842246,1366.491107180064,513591,775628,921,1024
-241863215,3137765348,0.0019644699968921486,850.4136645128996,513591,775628,921,1024
-501002,1306947734,0.001808911001717206,2646.78472328243,513591,775628,921,1024
-3124949600,1649447784,0.0022134210012154654,999.3340981015767,513591,775628,921,1024
-4523763498,1856510925,0.0022163489993545227,669.239035967434,513591,775628,921,1024
-3223961182,2337151916,0.001684728002146585,1366.2368261840381,513591,775628,921,1024
-345545628,2260191455,0.008373068998480448,3719.196155948357,513591,775628,921,4096
-3192919201,5726480086,0.0070519789987884,16132.529041698832,513591,775628,921,4096
-1205905007,5501907575,0.011622191002970794,295.4047787417922,513591,775628,921,4096
-17294385,146739,0.007572518003144069,6210.995751802389,513591,775628,921,4096
-1598126176,3585723044,0.007197785998869222,4283.211503733242,513591,775628,921,4096
-324150617,300414752,0.010200359000009485,1625.86832497776,513591,775628,921,4096
-295207349,4431275625,0.011280605998763349,418.1311220240191,513591,775628,921,4096
-2898144982,367726156,0.007909354000730673,2224.6100681615776,513591,775628,921,4096
-254043139,29750343,0.007265272997756256,5038.120186733389,513591,775628,921,4096
-357130628,524422773,0.010862682000151835,590.976768156467,513591,775628,921,4096
-447113,1753939781,0.0074761439973372035,3006.594288140207,513591,775628,921,4096
-2654951621,4733405417,0.0066350830020383,4938.75483840242,513591,775628,921,4096
-304392060,561314049,0.011186251998879015,674.9023483434884,513591,775628,921,4096
-256225555,3445560484,0.011652896999294171,786.5613711924018,513591,775628,921,4096
-251332730,292272335,0.008115971999359317,2718.092432316061,513591,775628,921,4096
-148648471,2165134791,0.007913038996775867,1809.9876798503608,513591,775628,921,4096
-5062779692,2071316312,0.011333256999932928,676.5217399000071,513591,775628,921,4096
-1902094309,3805108849,0.007831605998944724,3874.210860820841,513591,775628,921,4096
-25468519,31292241,0.007029169999441365,5912.370671266628,513591,775628,921,4096
-2400252153,350036028,0.011470358997030417,378.81892011281525,513591,775628,921,4096
+266770384,26512639,0.00010164000013901386,92.39126579388387,513591,775628,921,64
+6245491151,2414294704,0.00020633799977076706,96.25089604977572,513591,775628,921,64
+2567615920,2567615985,0.00019709399930434301,104.4465538356171,513591,775628,921,64
+6355147731,364380126,0.00023781799973221496,32.39877283968328,513591,775628,921,64
+98048843,1396697840,0.0002142590001312783,34.57797722095909,513591,775628,921,64
+5497775833,31907391,0.00031088399919099174,62.31629859945005,513591,775628,921,64
+267848955,2127631609,0.00018277400158694945,75.39559005128869,513591,775628,921,64
+3267643176,31496705,0.00017164400014735293,100.14490596769456,513591,775628,921,64
+608592398,1430925522,0.0002012940003623953,192.96369240720634,513591,775628,921,64
+7037870356,6157399526,0.00022610499945585616,53.94254537797592,513591,775628,921,64
+300512586,6771026237,0.000205901000299491,57.2294299925239,513591,775628,921,54
+330108819,21391493,0.0001937119996000547,144.9794901669213,513591,775628,921,64
+323173118,323170335,0.00023016900013317354,139.88923824750447,513591,775628,921,64
+668355561,74239698,0.0002018529994529672,486.2684671993839,513591,775628,921,64
+246729944,2135807035,0.00019468599930405617,152.49294251520968,513591,775628,921,64
+14003240,3863557122,0.00019984999926236924,71.11700922775599,513591,775628,921,64
+2801197168,5635402325,0.00019922799947380554,186.97069680923283,513591,775628,921,64
+4200289169,432772022,0.00023616900034539867,40.982597668115275,513591,775628,921,64
+3742897190,3742897205,0.000259584001469193,46.36558890617164,513591,775628,921,64
+1615544002,6367848393,0.00019980000070063397,213.51214967164023,513591,775628,921,64
+476035165,573415726,0.0007687699999223696,240.19903764870853,513591,775628,921,256
+479099916,4057780978,0.00048440099999425,908.9018423605959,513591,775628,921,256
+5251859324,5296885029,0.00046675199882884044,180.18771055276815,513591,775628,921,256
+451384269,6991953123,0.0006678720001218608,566.2518909105926,513591,775628,921,256
+4029640473,1555684750,0.0007564330007880926,64.6092981019593,513591,775628,921,256
+2446052142,7001192381,0.0007961640003486536,143.91169784075623,513591,775628,921,256
+60013445,2509486117,0.0004732729994429974,698.9197207144779,513591,775628,921,256
+29005808,2090461523,0.00048097100079758093,780.7444025172283,513591,775628,921,256
+561305072,3446098354,0.0007366410009126412,223.3581035176849,513591,775628,921,256
+1597984545,447768304,0.0005181039996386971,621.3623202000684,513591,775628,921,256
+5653835915,5311215307,0.0004822490009246394,638.2187310130835,513591,775628,921,256
+2120420445,26616157,0.000642011998934322,320.1619307772698,513591,775628,921,256
+1755318539,4561388697,0.0005720720000681467,330.05097365736015,513591,775628,921,256
+295389614,292762245,0.0007859530014684424,166.07695280989503,513591,775628,921,256
+309533148,276379851,0.0006863409998913994,350.1996661022576,513591,775628,921,256
+2943178350,1700849137,0.0005510640003194567,702.367616573946,513591,775628,921,256
+206224069,206225999,0.00046284400013973936,422.0440141421653,513591,775628,921,256
+1905682923,5254805194,0.00047709099999337923,642.19945113859,513591,775628,921,256
+5123007955,2794876437,0.00046947900045779534,579.1817210835991,513591,775628,921,256
+1579841594,1899778679,0.0006613479999941774,250.4962434959953,513591,775628,921,256
+1955737136,268088587,0.001894903998618247,2718.6930170275523,513591,775628,921,1024
+274306473,495054379,0.0027508719995239517,314.72405961212746,513591,775628,921,1024
+11840583,2943190473,0.0021290320000844076,813.1093109545037,513591,775628,921,1024
+3699558576,3264214896,0.0027594479997787857,377.29780925582327,513591,775628,921,1024
+3738176651,25249327,0.0016858350008988054,2576.412491543233,513591,775628,921,1024
+17084349,983584653,0.001765242001056322,1298.199887431708,513591,775628,921,1024
+770012290,2606021636,0.0020961320005881134,251.76600932797248,513591,775628,921,1024
+321371373,2160170484,0.002739528999882168,176.73759996157358,513591,775628,921,1024
+508577657,769121552,0.0015958780004439177,1408.87864985193,513591,775628,921,1024
+1672379598,1113350706,0.0023581000004924135,1007.2694712809154,513591,775628,921,1024
+4231864517,5116870457,0.0015773060003994033,1527.0721512554521,513591,775628,921,1024
+3367699187,897458684,0.003062688998397789,231.77534270070603,513591,775628,921,1024
+4612386241,7102319708,0.0017135489997599507,3050.7461344702438,513591,775628,921,1024
+262983215,150743435,0.0019472260009933962,1033.8206945234438,513591,775628,921,1024
+2836359391,6560575032,0.0021497539983101888,2201.365942061172,513591,775628,921,1024
+3542681323,3039497446,0.001614000000699889,920.7308121576677,513591,775628,921,1024
+325592795,310431046,0.0026595079998514848,761.6871848993279,513591,775628,921,1024
+1713150268,3782946390,0.002158137000151328,1262.2316990870518,513591,775628,921,1024
+60671173,7328201794,0.0021976349999022204,982.1789995182467,513591,775628,921,1024
+12248660,600882002,0.002606453001135378,142.2688934426737,513591,775628,921,1024
+70709809,3870422831,0.010068650999528472,1253.5767747511682,513591,775628,921,4096
+4180648989,735376328,0.011635648999799741,256.6095408821192,513591,775628,921,4096
+2376882055,322868826,0.01085727799909364,543.5061122137873,513591,775628,921,4096
+2327184772,5251664967,0.006545509000716265,4653.851723522941,513591,775628,921,4096
+7361971258,2623147659,0.010228490000372403,1194.0335084334713,513591,775628,921,4096
+1912266439,1239244495,0.011797420000220882,451.5204197234411,513591,775628,921,4096
+1665554667,29909069,0.00742093900043983,2887.857603033543,513591,775628,921,4096
+1618827071,5924033,0.007921080999949481,3236.178002744769,513591,775628,921,4096
+21263762,1777121700,0.007452742000168655,3738.0324179569425,513591,775628,921,4096
+1305538894,2451041838,0.008189054000467877,1657.7545953681608,513591,775628,921,4096
+2329957745,1802844573,0.006803607000620104,3549.4557139180847,513591,775628,921,4096
+894102667,1548411599,0.010804612000356428,353.1334045002259,513591,775628,921,4096
+21257893,5422770729,0.0066953530003956985,5639.5876417807285,513591,775628,921,4096
+2382285597,2618368245,0.0065926329989451915,5686.4073473934395,513591,775628,921,4096
+206237532,256031819,0.0075648129986802815,2830.2054038387437,513591,775628,921,4096
+6719959105,3840409788,0.01188248200014641,306.3968962367907,513591,775628,921,4096
+1417863214,687540295,0.010906610999882105,342.3292761767111,513591,775628,921,4096
+2468426226,3998172276,0.006668341000477085,5707.76816434155,513591,775628,921,4096
+5758095530,26112827,0.007515190000049188,3608.984500742662,513591,775628,921,4096
+502334,4042094280,0.007020570999884512,4285.3647186866065,513591,775628,921,4096
diff --git a/debug/classic_old.csv b/debug/classic_old.csv
new file mode 100644
index 0000000000000000000000000000000000000000..f2a88c57248be07997b4312dc7d65bfdb7da9c29
--- /dev/null
+++ b/debug/classic_old.csv
@@ -0,0 +1,121 @@
+start_node,target_node,query_time,trip_time,nodes,edges,charging_stations,dijkstra_rank
+278788097,278788064,3.6123998143011704e-05,2.544455887440966,513591,775628,921,4
+1974276840,304743827,4.0936000004876405e-05,5.468344830265442,513591,775628,921,4
+4379640612,251721242,4.584600173984654e-05,4.400673382656193,513591,775628,921,4
+7052016254,7052035885,4.489799903240055e-05,4.910422549620248,513591,775628,921,4
+297358502,296505210,4.975599949830212e-05,6.006005554923204,513591,775628,921,4
+4001179266,279803170,4.0498998714610934e-05,6.787909702485399,513591,775628,921,4
+370260513,15934136,3.024999750778079e-05,3.6488563422704834,513591,775628,921,4
+253688476,253688478,4.657600220525637e-05,5.102975420893581,513591,775628,921,4
+670244222,670244208,4.483399970922619e-05,2.8777689306919836,513591,775628,921,4
+295812797,1186947550,4.6608998673036695e-05,2.305732311136417,513591,775628,921,4
+2092158041,110968707,3.09450006170664e-05,10.348220071064414,513591,775628,921,4
+1019862577,310740297,5.166999835637398e-05,3.1150150790654334,513591,775628,921,4
+1596409452,21349599,2.5798999558901414e-05,6.226881406984204,513591,775628,921,4
+3629862160,35341595,4.756199996336363e-05,4.243324937022972,513591,775628,921,4
+5116240898,5116240897,3.0107003112789243e-05,1.7214481834825603,513591,775628,921,4
+9201751,9193591,4.026600072393194e-05,10.338578998313869,513591,775628,921,4
+325718780,1398513311,3.746799848158844e-05,7.194162255941293,513591,775628,921,4
+384931335,384931529,2.9496000934159383e-05,7.172397044818459,513591,775628,921,4
+3655203260,3655203230,4.6779998228885233e-05,26.340009684234197,513591,775628,921,4
+1772688730,1772688731,4.06340004701633e-05,1.8021178538349452,513591,775628,921,4
+3779253653,21605682,3.820599886239506e-05,6.440256144606137,513591,775628,921,16
+3442894702,1288303198,8.64629982970655e-05,10.174488131976736,513591,775628,921,16
+2734232768,1368463837,7.194700083346106e-05,24.979432711128094,513591,775628,921,16
+324460984,324460952,8.43620000523515e-05,34.855892541880934,513591,775628,921,16
+1388209924,1376143875,7.31250001990702e-05,23.369454475567824,513591,775628,921,16
+3296257345,33024617,5.04890012962278e-05,73.35269873617314,513591,775628,921,16
+21516057,21516060,6.770400068489835e-05,44.07024744026253,513591,775628,921,16
+4278663465,31927910,6.415900134015828e-05,17.381704300263863,513591,775628,921,16
+7010426275,7010426240,7.610299871885218e-05,11.550300725435491,513591,775628,921,16
+4451772155,2151728158,8.008000077097677e-05,21.968863349225796,513591,775628,921,16
+530230113,5220432715,6.3292001868831e-05,17.91782716089565,513591,775628,921,16
+995959176,996113704,6.185500024002977e-05,65.0727740633652,513591,775628,921,16
+281260920,2799020208,7.42839984013699e-05,36.80301813801878,513591,775628,921,16
+560149740,2337055488,7.689500125707127e-05,40.163722333537585,513591,775628,921,16
+1978950983,111007577,5.8395999076310545e-05,62.312263177665606,513591,775628,921,16
+82533584,82533589,0.00010228799874312244,22.531355395225866,513591,775628,921,16
+367526344,322828416,0.00014162099978420883,26.592301250432616,513591,775628,921,16
+2088441607,296969297,0.00010998300058417954,50.33670383622816,513591,775628,921,16
+1844442623,357475749,0.000112900001113303,62.81023925748234,513591,775628,921,16
+1028144237,1056964046,9.897800191538408e-05,68.73549942625228,513591,775628,921,16
+3220840672,201851149,0.0001950309997482691,174.32355211015434,513591,775628,921,64
+36748523,2388848,0.00019567200070014223,121.32580835738597,513591,775628,921,64
+3130347756,3130347329,0.0002424809972580988,108.27118302141959,513591,775628,921,64
+1547069810,411133732,0.0001613509994058404,256.40308180241857,513591,775628,921,64
+3597248342,1674603507,0.00023229100042954087,34.85652333729989,513591,775628,921,64
+3790253212,59975819,0.00016300100105581805,107.86232786378116,513591,775628,921,64
+2895826757,297507303,0.00016575200061197393,107.45826802804294,513591,775628,921,64
+1736934595,20966465,0.00017126899911090732,159.1639460794961,513591,775628,921,64
+319615593,2518878954,0.00023569699988001958,43.45869902592796,513591,775628,921,64
+5002927891,3754266159,0.00021129200104041956,57.98113603320815,513591,775628,921,64
+2579137172,5063570813,0.0002142390003427863,61.5366358276483,513591,775628,921,64
+312763593,134701949,0.00022530500064021908,108.1307587387181,513591,775628,921,64
+3369654275,1473378283,0.000288334002107149,109.99002882889786,513591,775628,921,64
+249633765,249633758,0.00024689299971214496,47.61533465071713,513591,775628,921,64
+4291056236,4291055580,0.0001970149969565682,261.1600903088694,513591,775628,921,64
+1637802213,320226813,0.00026519899984123185,28.070885122314884,513591,775628,921,64
+616611038,2583559409,0.0002618830003484618,37.246881034372066,513591,775628,921,64
+36318594,11666598,0.00024141800167853944,44.57229612596537,513591,775628,921,64
+383521,5095604737,0.00019654999778140336,174.0467542346948,513591,775628,921,64
+2068590974,318895208,0.0002688839995244052,36.21930872762024,513591,775628,921,64
+3247535208,25626731,0.0004903619992546737,634.8937297982908,513591,775628,921,256
+461546,653603498,0.0005161930021131411,881.3305760058632,513591,775628,921,256
+581195,581141,0.0004575650018523447,695.575903128425,513591,775628,921,256
+979225594,6783606326,0.0004905160021735355,432.4076961369738,513591,775628,921,256
+26261827,410452925,0.0007324520011025015,71.44640860941952,513591,775628,921,256
+2143163767,470897387,0.0005068809987278655,172.57630372344587,513591,775628,921,256
+1448902129,33958260,0.0004416499978106003,966.3231357738559,513591,775628,921,256
+509267256,508577799,0.00042274699808331206,333.6962081339936,513591,775628,921,256
+530798414,82538716,0.0005942719981248956,490.2426858850804,513591,775628,921,256
+3594887294,1664388881,0.0006805939992773347,173.17787222910795,513591,775628,921,256
+1444721834,2083020058,0.0006834269988758024,123.41660204450442,513591,775628,921,256
+453231089,600514464,0.0007116740016499534,80.29099386719858,513591,775628,921,256
+515323,77924156,0.000465983001049608,869.837002491225,513591,775628,921,256
+34004398,260977399,0.0005460020001919474,237.7417902569312,513591,775628,921,256
+346932262,3129578003,0.0007214979996206239,98.94681154802963,513591,775628,921,256
+319048125,287464702,0.0007328450010390952,104.10802402818534,513591,775628,921,256
+3556528925,357489219,0.0006546719996549655,136.23245421330063,513591,775628,921,256
+139541,293536918,0.0004627560010703746,770.2121702120756,513591,775628,921,256
+2131942265,2071408447,0.0006551229998876806,164.71708692338362,513591,775628,921,256
+2600312295,323125728,0.0006524159980472177,225.57100183204827,513591,775628,921,256
+319442900,2887934658,0.0024950549995992333,407.2932625146748,513591,775628,921,1024
+32008898,268772387,0.0015889329988567624,2803.148662897562,513591,775628,921,1024
+1111574411,6767508665,0.0015920830010145437,2625.511934495633,513591,775628,921,1024
+1969643540,14001867,0.001886399000795791,2293.8522997773557,513591,775628,921,1024
+1885077335,456744,0.0018805790023179725,1770.0419997862678,513591,775628,921,1024
+60263679,2489316973,0.0026386400022602174,444.55292443906046,513591,775628,921,1024
+3738929332,6560433799,0.0016814640002849046,3274.6931931857334,513591,775628,921,1024
+49874983,3674012436,0.001833171998441685,2070.5750652362267,513591,775628,921,1024
+5119369026,1940161211,0.0027592480000748765,410.0405387921802,513591,775628,921,1024
+6551313413,7049979601,0.0023089040005288552,2374.7962222547726,513591,775628,921,1024
+3071384878,306251709,0.0026317410010960884,435.8936768859933,513591,775628,921,1024
+1485262466,1482777851,0.0017236380008398555,1929.423503079553,513591,775628,921,1024
+134697348,303266729,0.002748591999989003,115.17308427261189,513591,775628,921,1024
+2362354369,3740059705,0.0027479170021251775,301.2279449750924,513591,775628,921,1024
+5116240907,5119483566,0.0016262169992842246,1366.491107180064,513591,775628,921,1024
+241863215,3137765348,0.0019644699968921486,850.4136645128996,513591,775628,921,1024
+501002,1306947734,0.001808911001717206,2646.78472328243,513591,775628,921,1024
+3124949600,1649447784,0.0022134210012154654,999.3340981015767,513591,775628,921,1024
+4523763498,1856510925,0.0022163489993545227,669.239035967434,513591,775628,921,1024
+3223961182,2337151916,0.001684728002146585,1366.2368261840381,513591,775628,921,1024
+345545628,2260191455,0.008373068998480448,3719.196155948357,513591,775628,921,4096
+3192919201,5726480086,0.0070519789987884,16132.529041698832,513591,775628,921,4096
+1205905007,5501907575,0.011622191002970794,295.4047787417922,513591,775628,921,4096
+17294385,146739,0.007572518003144069,6210.995751802389,513591,775628,921,4096
+1598126176,3585723044,0.007197785998869222,4283.211503733242,513591,775628,921,4096
+324150617,300414752,0.010200359000009485,1625.86832497776,513591,775628,921,4096
+295207349,4431275625,0.011280605998763349,418.1311220240191,513591,775628,921,4096
+2898144982,367726156,0.007909354000730673,2224.6100681615776,513591,775628,921,4096
+254043139,29750343,0.007265272997756256,5038.120186733389,513591,775628,921,4096
+357130628,524422773,0.010862682000151835,590.976768156467,513591,775628,921,4096
+447113,1753939781,0.0074761439973372035,3006.594288140207,513591,775628,921,4096
+2654951621,4733405417,0.0066350830020383,4938.75483840242,513591,775628,921,4096
+304392060,561314049,0.011186251998879015,674.9023483434884,513591,775628,921,4096
+256225555,3445560484,0.011652896999294171,786.5613711924018,513591,775628,921,4096
+251332730,292272335,0.008115971999359317,2718.092432316061,513591,775628,921,4096
+148648471,2165134791,0.007913038996775867,1809.9876798503608,513591,775628,921,4096
+5062779692,2071316312,0.011333256999932928,676.5217399000071,513591,775628,921,4096
+1902094309,3805108849,0.007831605998944724,3874.210860820841,513591,775628,921,4096
+25468519,31292241,0.007029169999441365,5912.370671266628,513591,775628,921,4096
+2400252153,350036028,0.011470358997030417,378.81892011281525,513591,775628,921,4096
diff --git a/debug/debug.py b/debug/debug.py
index 2420fb9a6ed6757d6ab9748a80d99b1c02a117f5..a4c3007eeb07387fd4863b4a1abe1ca642a4a3ff 100644
--- a/debug/debug.py
+++ b/debug/debug.py
@@ -1,12 +1,16 @@
 import json
 import datetime
 import pickle
+import random
 import pandas as pd
 from time import perf_counter
-
+import networkx as nx
+from networkx.algorithms.shortest_paths.weighted import _weight_function
+from evaluation.lib.algorithm import _dijkstra_multisource
+from evrouting.graph_tools import DISTANCE_KEY
 from evrouting.osm.imports import OSMGraph
 from evrouting import charge
-from evrouting.graph_tools import consumption_function_time_factory
+from evrouting.graph_tools import consumption_function_distance_factory
 
 
 def get_graph():
@@ -18,9 +22,48 @@ def get_graph():
 
 
 def get_tasks():
-    print('Getting tasks..')
-    df = pd.read_csv('classic.csv', dtype={'start_node': str, 'target_node': str})
-    return [(row['start_node'], row['target_node']) for _, row in df.iterrows()]
+    print('Getting tasks from file..')
+    df = pd.read_csv('tasks.csv', dtype={'start_node': str, 'target_node': str})
+    tasks = [(row['start_node'], row['target_node']) for _, row in df.iterrows()]
+    return [tasks[84]]
+    return tasks
+
+
+def _get_target_with_rank(graph, start_node, rank):
+    weight = _weight_function(graph, DISTANCE_KEY)
+    return _dijkstra_multisource(
+        graph,
+        [start_node],
+        weight=weight,
+        rank=rank
+    )
+
+
+def _get_ranked_tasks(G, rank, number):
+    """
+    Generate <number> start and target nodes with Dijkstra Rank of <rank>.
+
+    This is done by randomly sampling start nodes and finding for each of
+    them a target nodes with the according rank by executing a modified
+    Dijkstra routine.
+
+    """
+    tasks = []
+    attempts = 0
+    # Try three times to find a tasks with the required rank.
+    # If not enough nodes can be found, return what you have.
+    while len(tasks) < number and attempts < 3:
+        attempts += 1
+        for s in random.sample(list(G.nodes), number):
+            try:
+                t = _get_target_with_rank(G, s, rank)
+            except nx.NetworkXNoPath:
+                continue
+            tasks.append((s, t))
+            if len(tasks) == number:
+                break
+
+    return tasks
 
 
 def get_charging_stations():
@@ -30,24 +73,33 @@ def get_charging_stations():
     return charging_stations
 
 
+def get_ranked_tasks(G, ranks, query_per_rank):
+    print('Generating tasks..')
+    tasks = [i for r in ranks for i in _get_ranked_tasks(G, r, query_per_rank)]
+    with open('tasks.csv', 'w') as file:
+        file.write('start_node,target_node\n')
+        for s, t in tasks:
+            file.write(f'{s},{t}\n')
+    return tasks
+
+
 if __name__ == '__main__':
-    """Full tank is enough to get there. Must be equal to shortest path."""
-    tasks = get_tasks()
-    charging_stations = get_charging_stations()
     G = get_graph()
-    G.insert_charging_stations(charging_stations)
+    G.insert_charging_stations(get_charging_stations())
+    ranks = [6, 8, 10, 12, 14, 18]
+    query_per_rank = 20
 
-    c = consumption_function_time_factory(0.5)
+    c = consumption_function_distance_factory(0.5)
     mu_s = 40000
     mu_t = 0
     capacity = 40000
 
-    total_tasks = len(tasks)
+    # tasks = get_ranked_tasks(G, ranks, query_per_rank)
+    tasks = get_tasks()
+    total = len(tasks)
+    print(f'Evaluating {total} tasks..')
     for i, (s, t) in enumerate(tasks):
-        now = datetime.datetime.now().strftime("%H:%M:%S")
-        print(f'{now}: {i}/{total_tasks} ({(i / total_tasks) * 100:.2f} %)')
-        # nodes_before = set(G.nodes)
-        # edges_before = set(G.edges)
+        print(f'Solving {s} to {t}..')
         start = perf_counter()
         charge.routing.shortest_path(
             G=G,
@@ -60,7 +112,5 @@ if __name__ == '__main__':
             c=c
         )
         runtime = perf_counter() - start
-
-        # assert nodes_before ^ set(G.nodes) == set()
-        # assert edges_before ^ set(G.edges) == set()
-        # assert runtime < 100
+        now = datetime.datetime.now().strftime("%H:%M:%S")
+        print(f'{now} - {i + 1}/{total} ({((i + 1) / total) * 100:.2f} %)')
diff --git a/debug/tasks.csv b/debug/tasks.csv
new file mode 100644
index 0000000000000000000000000000000000000000..fc4cdaa9f34e54ce23ec204393448a0a8b256ce4
--- /dev/null
+++ b/debug/tasks.csv
@@ -0,0 +1,121 @@
+start_node,target_node
+338618220,275435743
+5486255196,5486255310
+362789988,2502685154
+21271626,3203789562
+321874030,321874045
+1506790922,1539339146
+15936854,319075729
+26582112,5120664345
+2775483237,37899400
+280518116,280518805
+311303940,310741833
+323176715,333124600
+2628278546,18233316
+697080832,684325588
+4525150942,18157369
+31382989,248966155
+51229203,3235229607
+4743069005,32866022
+2935639934,292277058
+2225648470,2895845860
+256504244,1460567043
+309273948,252180956
+346963079,2718111868
+7278370746,606196262
+361091244,1364901430
+324069738,273098837
+478744743,478744685
+6398994685,4593060552
+442024327,60263667
+253799569,253806882
+5123257977,671216811
+37879126,2326541373
+25186035,25187389
+339922389,2126609202
+357921628,2140740340
+1014137815,4836927366
+6631455144,5250290853
+2249925698,2313072564
+1608628206,1977788961
+2026218516,311305923
+364485342,2151728251
+287885440,5291970477
+4133094542,5119764921
+4523301773,7328201829
+5799788342,340180309
+3314168156,147790630
+6576844728,6513195312
+2749917046,287017951
+319273398,304602903
+1368463805,3145050462
+4186356394,2266421027
+4297015987,286797694
+1500721513,601052549
+335947065,2448571035
+6992447171,21733711
+4342264190,364478149
+3463281986,3458044451
+2857930902,17165978
+1113447154,2446142963
+5220126641,2465904603
+213534143,5219800404
+1848640403,4846551941
+1473432929,4815311148
+1111580587,3044653289
+3937887286,659522407
+324230910,734772925
+4407188793,290928269
+3783167932,4128457674
+4595907376,7010174733
+3669616333,318677524
+9194630,2441171083
+715150184,4596431431
+470897413,773660334
+361045267,3292599598
+2147975012,2056590134
+938717872,332974702
+1934045747,5776945061
+2145029018,2608714065
+6778012837,254896407
+1431572140,1774160121
+7451351149,824899787
+1588194197,5311185293
+326775,316495851
+2600400888,2364151130
+274939401,299642186
+2357512655,2999567269
+309739529,312891063
+318314178,3449597079
+281956861,300664972
+242336,293964339
+3592613181,1016222267
+781841763,315751252
+267762039,324650303
+48304950,509625465
+589371,281043193
+366366908,3803359060
+1773372489,2897498047
+5270152699,1935125623
+6917402738,17291447
+429363016,622975670
+933612274,77939603
+296877893,364112616
+4042062579,1377356310
+289381205,11247030
+2129925421,4791487754
+1931233112,5972495813
+1669284764,60403068
+339961759,296875471
+5016150227,2079245256
+1485262724,3753647684
+276798550,268103105
+587060960,2718818601
+2642428227,508892
+2519015456,384381
+1567054963,1536016609
+2382445037,2895860645
+4226606962,2810116799
+5653827521,1399528929
+2871248133,253244527
+2303031902,77930011
diff --git a/evaluation/configs/rank.yaml b/evaluation/configs/rank.yaml
index 23723ffe686c700d38d5b73b6dd4bd856cee03e8..2affcd758868dce966e8f2a61631a3c33b1f17bc 100644
--- a/evaluation/configs/rank.yaml
+++ b/evaluation/configs/rank.yaml
@@ -6,8 +6,8 @@ paths:
   charging_stations: charging_stations.json
   map: medium_nurnberg.osm
 queries_per_rank: 20
-ranks: [10, 12]
-algorithms: [classic, charge]
+ranks: [6, 8, 10, 12, 14, 18]
+algorithms: [charge]
 mu_s: 40 # Start and Target Soc
 mu_t: 0
 capacity: 40 # kWh
diff --git a/evaluation/lib/benchmarks.py b/evaluation/lib/benchmarks.py
index ac8dc1b3370f4df84a3a6940e6ad4d454a43ea33..c366fbb409badd75f86049c6e0a09e76334e6221 100644
--- a/evaluation/lib/benchmarks.py
+++ b/evaluation/lib/benchmarks.py
@@ -7,9 +7,7 @@ from dataclasses import asdict, fields
 
 import networkx as nx
 from networkx.algorithms.shortest_paths.weighted import _weight_function
-
 from evrouting.graph_tools import DISTANCE_KEY
-
 from evaluation.lib.algorithm import _dijkstra_multisource
 from evaluation.lib import queries
 from evaluation.lib.config import RankConf, QueryConf, InitConf, AnyConf
@@ -50,13 +48,13 @@ def fname(algorithm_name: str) -> str:
     return f'{algorithm_name}.csv'
 
 
-def _insert_charging_stations(graph, charging_stations, number=None):
+def _insert_charging_stations(G, charging_stations, number=None):
     start = perf_counter()
-    graph.insert_charging_stations(charging_stations, number)
+    G.insert_charging_stations(charging_stations, number)
     runtime = perf_counter() - start
 
     logger.info('Importing {} Charging Stations took {:.2f} s'.format(
-        len(graph.charging_stations),
+        len(G.charging_stations),
         runtime
     ))
 
@@ -87,7 +85,6 @@ def _init_result_files(result_dir, conf: AnyConf):
 def _run_queries(func, start_nodes, target_nodes, file: TextIO, **kwargs):
     logger.info(f'Running {len(start_nodes)} times {func.__name__}..')
     num_total = len(start_nodes)
-
     for i, (s, t) in enumerate(zip(start_nodes, target_nodes)):
         logger.debug(f'{i + 1}/{num_total}')
         result_data = func(s=s, t=t, **kwargs)
@@ -179,7 +176,7 @@ def rank(G, charging_stations, conf: RankConf, result_dir: Path):
                 _run_queries(func,
                              start_nodes,
                              target_nodes,
-                             file,
+                             file=file,
                              G=G,
                              conf=conf)
 
@@ -209,4 +206,4 @@ def init(G, charging_stations, conf: InitConf, result_dir: Path):
                 out_insert,
                 G=G,
                 conf=conf,
-            )
\ No newline at end of file
+            )
diff --git a/evaluation/lib/export.py b/evaluation/lib/export.py
deleted file mode 100644
index 8b137891791fe96927ad78e64b0aad7bded08bdc..0000000000000000000000000000000000000000
--- a/evaluation/lib/export.py
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/evaluation/lib/queries.py b/evaluation/lib/queries.py
index 1746336fada272066b8ed7a2638e85ad687b2bdc..6f5a1beeb46812d2fd2409f81919b45d0a1d6c98 100644
--- a/evaluation/lib/queries.py
+++ b/evaluation/lib/queries.py
@@ -21,7 +21,7 @@ from evrouting.osm.routing import (
 )
 
 from evaluation.lib.algorithm import ranked_dijkstra
-from evaluation.lib.config import InitConf, QueryConf, RankConf, AnyConf
+from evaluation.lib.config import InitConf, RankConf, AnyConf
 
 
 @dataclass