<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def podcasts_iter(self, *, device_id=None, page_size=250):
 		"""Get a paged iterator of subscribed podcast series. 		Parameters: 			device_id (str, Optional):
 A mobile device ID. 				Default: Use ``device_id`` of the :class:`MobileClient` instance. 			page_size (int, Optional):
 The maximum number of results per returned page. 				Max allowed is ``49995``. 				Default: ``250`` 		Yields: 			list: Podcast series dicts. 		"""


		if device_id is None:
			device_id = self.device_id

		start_token = None
		prev_items = None

		while True:
			response = self._call(
				mc_calls.PodcastSeries,
				device_id,
				max_results=page_size,
				start_token=start_token
			)
			items = response.body.get('data', {}).get('items', [])

			# Google does some weird shit.
			if items != prev_items:
				subscribed_podcasts = [
					item
					for item in items
					if item.get('userPreferences', {}).get('subscribed')
				]

				yield subscribed_podcasts

				prev_items = items
			else:
				break

			start_token = response.body.get('nextPageToken')
			if start_token is None:
				break