code: def load_config(self, config_file=None):
          
          if config_file is None:
              config_file = [
                  '/etc/ellis.conf',
                  '/etc/ellis/ellis.conf',
                  os.path.join(os.path.dirname(__file__), 'ellis.conf'),
              ]
  
          self.config.read(config_file, encoding='utf-8')
  
          return self
docs: If `config_file` is not None, tries to load Ellis configuration from
          the given location. If, for some reason,  the file can't be read,
          Ellis will not start.
  
          If no configuration file is given (`config_file` is None), tries to
          load Ellis configuration from these potential locations,
          in this specific order:
  
              1. `/etc/ellis.conf`
              2. `/etc/ellis/ellis.conf`
              3. `./ellis.conf`
  
          If more than one of these files exist, the configuration is merged
          which can lead to one or more section(s) being overriden.
  
          The last file (`./ellis.conf`) takes precedence over the second one,
          which takes precedence over the first one.