Write a program which performs A* search to find the solution to any given board position for 15 puzzle using two types of heuristics: 1. number of misplaced tiles and 2. Manhattan distance.