code: def _init_hdrgos(self, hdrgos_dflt, hdrgos_usr=None, add_dflt=True):
          
          # Use default GO group header values
          if (hdrgos_usr is None or hdrgos_usr is False) and not self.sections:
              return set(hdrgos_dflt)
          # Get GO group headers provided by user
          hdrgos_init = set()
          if hdrgos_usr:
              chk_goids(hdrgos_usr, "User-provided GO group headers")
              hdrgos_init |= set(hdrgos_usr)
          if self.sections:
              self._chk_sections(self.sections)
              hdrgos_sec = set([hg for _, hdrgos in self.sections for hg in hdrgos])
              chk_goids(hdrgos_sec, "User-provided GO group headers in sections")
              hdrgos_init |= hdrgos_sec
          # Add default depth-01 GOs to headers, if desired
          if add_dflt:
              return set(hdrgos_init).union(hdrgos_dflt)
          # Return user-provided GO grouping headers
          return hdrgos_init
docs: Initialize GO high