code: func (p *Provider) ListenRequest(domain string) (*tls.Certificate, error) {
  	ctx := log.With(context.Background(), log.Str(log.ProviderName, "acme"))
  
  	acmeCert, err := p.resolveCertificate(ctx, types.Domain{Main: domain}, false)
  	if acmeCert == nil || err != nil {
  		return nil, err
  	}
  
  	cert, err := tls.X509KeyPair(acmeCert.Certificate, acmeCert.PrivateKey)
  
  	return &cert, err
  }
docs: // ListenRequest resolves new certificates for a domain from an incoming request and return a valid Certificate to serve (onDemand option)