Added lots of running time analysis