code: def rgb_to_xterm(r, g, b):
      
      if r < 5 and g < 5 and b < 5:
          return 16
      best_match = 0
      smallest_distance = 10000000000
      for c in range(16, 256):
          d = (COLOR_TABLE[c][0] - r) ** 2 + \
              (COLOR_TABLE[c][1] - g) ** 2 + \
              (COLOR_TABLE[c][2] - b) ** 2
          if d < smallest_distance:
              smallest_distance = d
              best_match = c
      return best_match
docs: Quantize RGB values to an xterm 256-color ID
  
      This works by envisioning the RGB values for all 256 xterm colors
      as 3D euclidean space and brute-force searching for the nearest
      neighbor.
  
      This is very slow.  If you're very lucky, :func:`compile_speedup`
      will replace this function automatically with routines in
      `_xterm256.c`.