code: def _parse_hz(self,hz,Hz,dHzdz):
          
          if isinstance(hz,dict):
              hz= [hz]
          try:
              nhz= len(hz)
          except TypeError:
              hz= [hz]
              Hz= [Hz]
              dHzdz= [dHzdz]
              nhz= 1
          if nhz != self._nsigma and nhz != 1:
              raise ValueError('Number of hz functions needs to be equal to the number of Sigma functions or to 1')
          if nhz == 1 and self._nsigma > 1:
              hz= [hz[0] for ii in range(self._nsigma)]
              if not isinstance(hz[0],dict):
                  Hz= [Hz[0] for ii in range(self._nsigma)]
                  dHzdz= [dHzdz[0] for ii in range(self._nsigma)]
          self._Hz= Hz
          self._hz= hz
          self._dHzdz= dHzdz       
          self._nhz= len(self._hz)
          if isinstance(hz[0],dict):
              self._hz_dict= copy.copy(hz)
              self._parse_hz_dict()
          else:
              self._hz_dict= None
          return None
docs: NAME:
             _parse_hz
          PURPOSE:
             Parse the various input options for Sigma* functions
          HISTORY:
             2016-12-27 - Written - Bovy (UofT/CCA)