docs: def _post_preparation(self):
          '''
          The steps for post-preparation (when the logs, and everything is
          already setup).
          '''
          self.opts['hwm'] = CONFIG.ZMQ_INTERNAL_HWM if self.hwm is None else self.hwm
          self.opts['_server_send_unknown'] = False
          for pub in self.publisher:
              pub_name = list(pub.keys())[0]
              pub_opts = list(pub.values())[0]
              error_whitelist = pub_opts.get('error_whitelist', [])
              error_blacklist = pub_opts.get('error_blacklist', [])
              if 'UNKNOWN' not in error_blacklist:
                  # by default we should not send unknown messages
                  error_blacklist.append('UNKNOWN')
              if 'RAW' not in error_blacklist:
                  # same with RAW
                  error_blacklist.append('RAW')
              # This implementation is a bit sub-optimal, but more readable like
              # that. It is executed only at the init, so just once.
              if 'only_unknown' in pub_opts and pub[pub_name]['only_unknown']:
                  pub[pub_name]['send_unknown'] = True
                  error_whitelist = ['UNKNOWN']
                  error_blacklist = []
              if 'only_raw' in pub_opts and pub[pub_name]['only_raw']:
                  pub[pub_name]['send_raw'] = True
                  error_whitelist = ['RAW']
                  error_blacklist = []
              if 'send_unknown' in pub_opts and 'UNKNOWN' in error_blacklist:
                  error_blacklist.remove('UNKNOWN')
              if 'send_raw' in pub_opts and 'RAW' in error_blacklist:
                  error_blacklist.remove('RAW')
              self.opts['_server_send_unknown'] |= 'UNKNOWN' in error_whitelist or 'UNKNOWN' not in error_blacklist
              pub[pub_name]['error_whitelist'] = error_whitelist
              pub[pub_name]['error_blacklist'] = error_blacklist