mem opt, fix astar