code: def random_outer_pos(maze: np.ndarray) -> Tuple[int, int]:
      """
      Returns a random position on the outer edge of the maze.
  
      Args:
          maze (np.ndarray): A NumPy array representing the maze.
  
      Returns:
          Tuple[int, int]: A tuple containing the random outer position's row and column indices.
      """
      height, width = maze.shape
      edge_pos = [
          (x, y)
          for x, row in enumerate(maze)
          for y, cell in enumerate(row)
          if (x in (0, width - 1) or y in (0, height - 1)) and cell == 0
      ]
      return random.choice(edge_pos)
  
file_path: evals/evals/registry/data/mazes/nxn_maze_eval_generator.py
imports: import concurrent.futures
  import json
  import os
  import random
  import threading
  from typing import Dict, List, Tuple, Union
  import networkx
  import numpy
  from numpy import ndarray
  from tqdm import tqdm
label_desc: Use image node_id 3 for calling a global function with example usage: random_outer_pos(maze) and returns: random