@logged
    def do_reserve_experiment(self, experiment_id, client_initial_data, consumer_data):
        reservation_holder = self._call('reserve_experiment',session_id=self.session_id, experiment_id=experiment_id, client_initial_data=client_initial_data, consumer_data=consumer_data)
        reservation = self._parse_reservation_holder(reservation_holder)
        if isinstance(reservation, Reservation.ConfirmedReservation) or reservation.remote_reservation_id is not None and reservation.remote_reservation_id != '':
            self.remote_url            = reservation.url
            self.remote_reservation_id = reservation.remote_reservation_id
        else:
            self.remote_url            = None
            self.remote_reservation_id = None
        self.reservation_id = reservation.reservation_id
        return reservation
dataset/ETHPy150Open weblabdeusto/weblabdeusto/server/src/weblab/admin/bot/client.py/AbstractBot.do_reserve_experiment/operator `and` -> `or`