code: func (c Config) QuickFix() (err error) {
  	maxTries := 10
  	if c.MaxTries > 0 {
  		maxTries = c.MaxTries
  	}
  	for i := 0; i < maxTries; i++ {
  		var foundError bool
  		foundError, err = c.QuickFixOnce()
  		if !foundError {
  			return nil
  		}
  	}
  
  	return
  }
docs: // QuickFix rewrites AST files of same package so that they pass go build.
  // For example:
  //   v declared but not used             -> append `_ = v`
  //   "p" imported but not used           -> rewrite to `import _ "p"`
  //   no new variables on left side of := -> rewrite `:=` to `=`
  //
  // TODO implement hardMode, which removes errorneous code rather than adding