code: func (p *FileProvider) Retrieve() (Value, error) {
  	p.retrieved = false
  
  	filename, err := p.filename()
  	if err != nil {
  		return Value{ProviderName: FileCredentialsProviderName}, err
  	}
  
  	creds, err := p.loadCredentials(filename)
  	if err != nil {
  		return Value{ProviderName: FileCredentialsProviderName}, err
  	}
  
  	if len(creds.ProviderName) == 0 {
  		creds.ProviderName = FileCredentialsProviderName
  	}
  
  	p.retrieved = true
  	return creds, nil
  }
docs: // Retrieve reads and extracts the shared credentials from the current
  // users home directory.