public function authorizeUpgradePackage(AnCommandContext $context)
    {
        $viewer = $context->viewer;

        if (!$viewer->hasSubscription()) {
            return false;
        }

        $package = $viewer->subscription->package;

        return !$this->eql($package) &&
        (
            $package->duration < $this->duration ||
            $package->price < $this->price
        );
    }