/**
 * This function returns the obstacle at the given position on the obstacle map.
 *
 * @param position The x and y coordinates to check.
 * @param obstacleMap A 2D grid representing the obstacle map.
 * @return The obstacle value at the given position.
 */
fun getObstacleAtPosition(position: Pair<Int, Int>, obstacleMap: List<List<Int>>): Int {

    return obstacleMap[position.first][position.second]
}
/**
 * This function returns the obstacle at the given position on the obstacle map.
 *
 * @param position The x and y coordinates to check.
 * @param obstacleMap A 2D grid representing the obstacle map.
 * @return The obstacle value at the given position.
 */
fun getObstacleAtPosition(position: Pair<Int, Int>, obstacleMap: List<List<Int>>): Int {
/**
 * This function returns the obstacle at the given position on the obstacle map.
 *
 * @param position The x and y coordinates to check.
 * @param obstacleMap A 2D grid representing the obstacle map.
 * @return The obstacle value at the given position.
 */
fun getObstacleAtPosition(position: Pair<Int, Int>, obstacleMap: List<List<Int>>): Int {

    return obstacleMap[position.first][position.second]
}