code: func (c Credentials) ForHost(host svchost.Hostname) (HostCredentials, error) {
  	for _, source := range c {
  		creds, err := source.ForHost(host)
  		if creds != nil || err != nil {
  			return creds, err
  		}
  	}
  	return nil, nil
  }
docs: // ForHost iterates over the contained CredentialsSource objects and
  // tries to obtain credentials for the given host from each one in turn.
  //
  // If any source returns either a non-nil HostCredentials or a non-nil error
  // then this result is returned. Otherwise, the result is nil, nil.