code: def _read_csd(fname, head_size):
      # Label, Theta, Phi, Radius, X, Y, Z, off sphere surface
      options = dict(
          comments="//",
          dtype=(_str, "f4", "f4", "f4", "f4", "f4", "f4", "f4"),
      )
      ch_names, _, _, _, xs, ys, zs, _ = _safe_np_loadtxt(
          fname, **options
      )
      pos = np.stack([xs, ys, zs], axis=-1)
  
      if head_size is not None:
          pos *= head_size / np.median(np.linalg.norm(pos, axis=1))
  
      return make_dig_montage(ch_pos=_check_dupes_odict(ch_names, pos))
  
imports: import csv
  import os.path
  from collections import OrderedDict
  from functools import partial
  import numpy
  from .._freesurfer import get_mni_fiducials
  from ..transforms import _sph_to_cart
  from ..utils import _pl, _soft_import, warn
  from .None import __file__
  from .montage import make_dig_montage
label_desc: Use image node_id 9 for calling a global function with example usage: _read_csd(fname, head_size) and returns: make_dig_montage