<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_certificate(self, name, type, certificate_data, signature=None, **kwargs):
 """Add a new BYOC certificate. :param str name: name of the certificate (Required) :param str type: type of the certificate. Values: lwm2m or bootstrap (Required) :param str certificate_data: X509.v3 trusted certificate in PEM format. (Required) :param str signature: This parameter has been DEPRECATED in the API and does not need to be provided. :param str status: Status of the certificate. Allowed values: "ACTIVE" | "INACTIVE". :param str description: Human readable description of this certificate, not longer than 500 characters. :returns: Certificate object :rtype: Certificate """

        kwargs.update({'name': name})
        kwargs.update({'type': type})
        api = self._get_api(iam.AccountAdminApi)

        kwargs.update({'certificate_data': certificate_data})
        certificate = Certificate._create_request_map(kwargs)
        if not certificate.get('enrollment_mode') and signature:
            certificate.update({'signature': signature})
        body = iam.TrustedCertificateReq(**certificate)
        prod_cert = api.add_certificate(body)
        return self.get_certificate(prod_cert.id)