<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def ring_number(self):
 		"""The number of the ring that has changed state, 		with 0 being the first ring. 		On tablets with only one ring, this method always returns 0. 		For events not of type 		:attr:`~libinput.constant.EventType.TABLET_PAD_RING`, this property 		raises :exc:`AssertionError`. 		Returns: 			int: The index of the ring that changed state. 		Raises: 			AssertionError 		"""


		if self.type != EventType.TABLET_PAD_RING:
			raise AttributeError(_wrong_prop.format(self.type))
		return self._libinput.libinput_event_tablet_pad_get_ring_number(
			self._handle)