code: def _retrieve_and_validate_certificate_chain(self, cert_url):
          # type: (str) -> Certificate
          
          self._validate_certificate_url(cert_url)
  
          cert_chain = self._load_cert_chain(cert_url)
          self._validate_cert_chain(cert_chain)
          return cert_chain
docs: Retrieve and validate certificate chain.
  
          This method validates if the URL is valid and loads and
          validates the certificate chain, before returning it.
  
          :param cert_url: URL for retrieving certificate chain
          :type cert_url: str
          :return The certificate chain loaded from the URL
          :rtype cryptography.x509.Certificate
          :raises: :py:class:`VerificationException` if the URL is invalid,
              if the loaded certificate chain is invalid