code: def make_projector_info(info, include_active=True):
      """Make an SSP operator using the measurement info.
  
      Calls make_projector on good channels.
  
      Parameters
      ----------
      %(info_not_none)s
      include_active : bool
          Also include projectors that are already active.
  
      Returns
      -------
      proj : array of shape [n_channels, n_channels]
          The projection operator to apply to the data.
      nproj : int
          How many items in the projector.
      """
      proj, nproj, _ = make_projector(
          info["projs"], info["ch_names"], info["bads"], include_active
      )
      return proj, nproj
  
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 8 for calling a global function with example usage: make_projector_info(info, include_active) and returns: proj,  nproj