code: def issue(self, chain):
          
  
          blockchain_bytes = self.certificate_batch_handler.prepare_batch()
  
          for attempt_number in range(0, self.max_retry):
              try:
                  txid = self.transaction_handler.issue_transaction(blockchain_bytes)
                  self.certificate_batch_handler.finish_batch(txid, chain)
                  logging.info('Broadcast transaction with txid %s', txid)
                  return txid
              except BroadcastError:
                  logging.warning(
                      'Failed broadcast reattempts. Trying to recreate transaction. This is attempt number %d',
                      attempt_number)
          logging.error('All attempts to broadcast failed. Try rerunning issuer.')
          raise BroadcastError('All attempts to broadcast failed. Try rerunning issuer.')
docs: Issue the certificates on the blockchain
          :return: