A* search algorithm
+***********+++++++*****+++++++++++++**++++++**+++++++++++++++++++++++++++++++++**+++++++++++++++++++++++++++++++++++++++++++++++++****++++********+++**********+++++++++++++++++++++++++++++++++***+++++++++++++++++++*****++++++++**+++++++++++++++++++++++++++++++++++++++++**+++++******************++++++++++++++++++++++***++++*****+++++++++++++++++++++++*++++++++++++++++****+++++++++++++++++*+++++++++++++++++++++++++++++++++++++++*+++++++++++++++++****+++++++++++++++++++++*+++++++++++++++++++++++++++**++++++++**************++++++++++++++***+++*****+++++++++++++++++++++++++++++++++**++++********+++++++++++**+++++++++++++++++++++++++++++++++++++++++++++++++++++++******++++++++++++++++*******************++++++++++++++++++++++++++*******+++++++++++++++++++***++**++++++++++++++++++++++++++++++++++++++**+++++++++++++++++++++++++++++++++++++++*******++++++******************++++++++++++++++++*+++++++++++++++++++++++++++++++++++++++++++++++**++++++++++++++++++++++++++++++++++++++++**++++++++++++++*******++++*+++++++++++++++++++++++++++*++++++++++++++++++**++++**++++++**+++***++++++++++++++++++****+++++++++++++*++++++++++++++++++++***********+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++**************++++++++++++******+++++*********++++++++++++**++**+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++******+++++***+++++++++++++++++++++++++++++++++++++++++**********+++++++++++++++++++++++++++++++*****+++**++++++++++++*******++++++++**++++++*****+++++++++++++++++++++++++++++++++++*++++++++++++++****++++++++++++++**+++++***+++++++++++++++++**+++++++++++++++***********+++++++++*****++++++++++++++++++++++++++++++++**++++++++++++++++++++++++++++++++++++++**+++********+++++++++++++++++++++++++++++++++*****+++++++++++***+++++++++++***+++++++************++++++++++++++++++++++++++***+++++++++++++++++++++++++++++++++++++++*********++*++++*+++++++++*+++++++++++++******+++++++++*****+++++++++**************+++***********++++++++++++++++*+++++++++++**+******++++++++ #