code: def set_seat_logical_name(self, seat):
  		
  
  		rc = self._libinput.libinput_device_set_seat_logical_name(
  			self._handle, seat.encode())
  		assert rc == 0, 'Cannot assign device to {}'.format(seat)
docs: Change the logical seat associated with this device by removing
  		the device and adding it to the new seat.
  
  		This command is identical to physically unplugging the device, then
  		re-plugging it as a member of the new seat. libinput will generate
  		a :attr:`~libinput.constant.EventType.DEVICE_REMOVED` event and this
  		:class:`Device` is considered removed from the context; it will not
  		generate further events.
  		A :attr:`~libinput.constant.EventType.DEVICE_ADDED` event is
  		generated with a new :class:`Device`. It is the caller's
  		responsibility to update references to the new device accordingly.
  
  		If the logical seat name already exists in the device's physical seat,
  		the device is added to this seat. Otherwise, a new seat is created.
  
  		Note:
  			This change applies to this device until removal or
  			:meth:`~libinput.LibInput.suspend`, whichever happens earlier.
  		Args:
  			seat (str): The new logical seat name.
  		Raises:
  			AssertionError