<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def reactivate(self):
 		""" 		Reactivates this subscription. 		If a customer's subscription is canceled with ``at_period_end`` set to True and it has not yet reached the end 		of the billing period, it can be reactivated. Subscriptions canceled immediately cannot be reactivated. 		(Source: https://stripe.com/docs/subscriptions/canceling-pausing) 		.. warning:: Reactivating a fully canceled Subscription will fail silently. Be sure to check the returned \ 		Subscription's status. 		"""

		stripe_subscription = self.api_retrieve()
		stripe_subscription.plan = self.plan.id
		stripe_subscription.cancel_at_period_end = False

		return Subscription.sync_from_stripe_data(stripe_subscription.save())