<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def physical_name(self):
 		"""The physical name of the seat. 		For libinput contexts created from udev, this is always the same value 		as passed into :meth:`~libinput.LibInputUdev.assign_seat` and all 		seats from that context will have the same physical name. 		The physical name of the seat is one that is usually set by the system 		or lower levels of the stack. In most cases, this is the base filter 		for devices - devices assigned to seats outside the current seat will 		not be available to the caller. 		Returns: 			str: The physical name of this seat. 		"""


		pchar = self._libinput.libinput_seat_get_physical_name(self._handle)
		return string_at(pchar).decode()