code: func (s *Signer) Info(req info.Req) (resp *info.Resp, err error) {
  	cert, err := s.Certificate(req.Label, req.Profile)
  	if err != nil {
  		return
  	}
  
  	profile, err := signer.Profile(s, req.Profile)
  	if err != nil {
  		return
  	}
  
  	resp = new(info.Resp)
  	if cert.Raw != nil {
  		resp.Certificate = string(bytes.TrimSpace(pem.EncodeToMemory(&pem.Block{Type: "CERTIFICATE", Bytes: cert.Raw})))
  	}
  	resp.Usage = profile.Usage
  	resp.ExpiryString = profile.ExpiryString
  
  	return
  }
docs: // Info return a populated info.Resp struct or an error.