public function resume()
{
if (!$this->onGracePeriod()) {
throw new LogicException('Unable to resume subscription that is not within grace period.');
}
$subscription = $this->asBraintreeSubscription();
BraintreeSubscription::update($subscription->id, ['neverExpires' => true, 'numberOfBillingCycles' => null]);
$this->fill(['ends_at' => null])->save();
return $this;
}