astar fully functional