code: def _get_public_suffix_list():
      
      local_psl = os.environ.get('PUBLIC_SUFFIX_LIST')
      if local_psl:
          with codecs.open(local_psl, 'r', 'utf-8') as f:
              psl_raw = f.readlines()
      else:
          psl_raw = unicode(urlopen(PSL_URL).read(), 'utf-8').split('\n')
      psl = set()
      for line in psl_raw:
          item = line.strip()
          if item != '' and not item.startswith('//'):
              psl.add(item)
      return psl
docs: Return a set containing all Public Suffixes.
  
      If the env variable PUBLIC_SUFFIX_LIST does not point to a local copy of the
      public suffix list it is downloaded into memory each time urltools is
      imported.