code: func (s *Filesystem) SetBackupPath(path string) {
  	s.backupPath = path
  	s.backupFile = nil
  	s.writtenBackup = false
  }
docs: // SetBackupPath configures the receiever so that it will create a local
  // backup file of the next state snapshot it reads (in State) if a different
  // snapshot is subsequently written (in WriteState). Only one backup is
  // written for the lifetime of the object, unless reset as described below.
  //
  // For correct operation, this must be called before any other state methods
  // are called. If called multiple times, each call resets the backup
  // function so that the next read will become the backup snapshot and a
  // following write will save a backup of it.