code: def remove_subscriptions(self, server_id, sub_paths):
          # pylint: disable=line-too-long
            # noqa: E501
  
          # Validate server_id
          server = self._get_server(server_id)
  
          # If list, recursively call this function with each list item.
          if isinstance(sub_paths, list):
              for sub_path in sub_paths:
                  self.remove_subscriptions(server_id, sub_path)
              return
  
          # Here, the variable will be a single list item.
          sub_path = sub_paths
  
          server.conn.DeleteInstance(sub_path)
  
          inst_list = self._owned_subscriptions[server_id]
          # We iterate backwards because we change the list
          for i in six.moves.range(len(inst_list) - 1, -1, -1):
              inst = inst_list[i]
              if inst.path == sub_path:
                  del inst_list[i]
docs: Remove indication subscription(s) from a WBEM server, by deleting the
          indication subscription instances in the server.
  
          The indication subscriptions must be owned or permanent (i.e. not
          static).
  
          Parameters:
  
            server_id (:term:`string`):
              The server ID of the WBEM server, returned by
              :meth:`~pywbem.WBEMSubscriptionManager.add_server`.
  
            sub_paths (:class:`~pywbem.CIMInstanceName` or list of :class:`~pywbem.CIMInstanceName`):
              Instance path(s) of the indication subscription instance(s) in the
              WBEM server.
  
          Raises:
  
              Exceptions raised by :class:`~pywbem.WBEMConnection`.