code: def save_html(self, filename=None, overwrite=False):
          
  
          if filename is None:
              raise ValueError('Please provide a filename, e.g. viz.save_html(filename="viz.html").')
  
          import os
          base = self._html
          js = self.load_embed()
          if os.path.exists(filename):
              if overwrite is False:
                  raise ValueError("File '%s' exists. To ovewrite call save_html with overwrite=True."
                                   % os.path.abspath(filename))
              else:
                  os.remove(filename)
          with open(filename, "wb") as f:
              f.write(base.encode('utf-8'))
              f.write('<script>' + js.encode('utf-8') + '</script>')
docs: Save self-contained html to a file.
  
          Parameters
          ----------
          filename : str
              The filename to save to