code: def _normalize_proj(info):
      """Normalize proj after subselection to avoid warnings.
  
      This is really only useful for tests, and might not be needed
      eventually if we change or improve our handling of projectors
      with picks.
      """
      # Here we do info.get b/c info can actually be a noise cov
      _make_projector(
          info["projs"],
          info.get("ch_names", info.get("names")),
          info["bads"],
          include_active=True,
          inplace=True,
      )
  
imports: import re
  from copy import deepcopy
  from itertools import count
  import numpy
  from ..defaults import _BORDER_DEFAULT, _EXTRAPOLATE_DEFAULT, _INTERPOLATION_DEFAULT
  from ..fixes import _safe_svd
  from ..utils import _check_option, _validate_type, fill_doc, logger, object_diff, verbose, warn
  from .constants import FIFF
  from .pick import _ELECTRODE_CH_TYPES, _electrode_types, pick_info, pick_types
  from .tag import _rename_list, find_tag
  from .tree import dir_tree_find
  from .write import _safe_name_list, end_block, start_block, write_float, write_float_matrix, write_int, write_name_list_sanitized, write_string
label_desc: Use image node_id 7 for calling a global function with example usage: _normalize_proj(info) without return types