code: def disapproveproposal(self, proposal_ids, account=None, approver=None, **kwargs):
          
          from .proposal import Proposal
  
          if not account:
              if "default_account" in self.config:
                  account = self.config["default_account"]
          if not account:
              raise ValueError("You need to provide an account")
          account = Account(account, blockchain_instance=self)
          if not approver:
              approver = account
          else:
              approver = Account(approver, blockchain_instance=self)
  
          if not isinstance(proposal_ids, (list, set, tuple)):
              proposal_ids = {proposal_ids}
  
          op = []
          for proposal_id in proposal_ids:
              proposal = Proposal(proposal_id, blockchain_instance=self)
              op.append(
                  operations.Proposal_update(
                      **{
                          "fee": {"amount": 0, "asset_id": "1.3.0"},
                          "fee_paying_account": account["id"],
                          "proposal": proposal["id"],
                          "active_approvals_to_remove": [approver["id"]],
                          "prefix": self.prefix,
                      }
                  )
              )
          return self.finalizeOp(op, account["name"], "active", **kwargs)
docs: Disapprove Proposal
  
              :param list proposal_ids: Ids of the proposals
              :param str account: (optional) the account to allow access
                  to (defaults to ``default_account``)