     Manager.defaultManager.shouldPromptIfRated = shouldPromptIfRated
 }
 
+
+/*
+ * Return whether Armchair will try and present the Storekit review prompt (useful for custom dialog modification)
+ */
+public var shouldTryStoreKitReviewPrompt : Bool {
+    return Manager.defaultManager.shouldTryStoreKitReviewPrompt
+}
+
 /*
  * If set to true, the main bundle will always be used to load localized strings.
  * Set this to true if you have provided your own custom localizations in

                        // note that tint color has to be set after the controller is presented in order to take effect (last checked in iOS 9.3)
                        alertView.view.tintColor = tintColor
                    }
                    
                
                

        return (daysBeforeReminding > 0 && remindButtonTitle != nil)
    }
    
    public var shouldTryStoreKitReviewPrompt : Bool {
        if #available(iOS 10.3, *), useStoreKitReviewPrompt { return true }
        return false
    }
    
    fileprivate func requestStoreKitReviewPrompt() -> Bool {
        if #available(iOS 10.3, *), useStoreKitReviewPrompt {
            SKStoreReviewController.requestReview()
            // Assume this version is rated. There is no API to tell if the user actaully rated.
            userDefaultsObject?.setBool(true, forKey: keyForArmchairKeyType(ArmchairKey.RatedCurrentVersion))
            userDefaultsObject?.setBool(true, forKey: keyForArmchairKeyType(ArmchairKey.RatedAnyVersion))
            userDefaultsObject?.synchronize()
            
            closeModalPanel()
            return true
        }
        return false
    }
    
    fileprivate func showRatingAlert() {
        if let customClosure = customAlertClosure {
            customClosure({[weak self] in
                if let result = self?.requestStoreKitReviewPrompt(), result {
                    ///Showed storekit prompt, all done
                } else {
                    /// Didn't show storekit prompt, present app store manually
                    self?._rateApp()
                }

            }, {[weak self] in self?.remindMeLater()}, {[weak self] in self?.dontRate()})
            if let closure = self.didDisplayAlertClosure {
                closure()
            }
        } else {
            #if os(iOS)
                if requestStoreKitReviewPrompt() {
                    ///Showed storekit prompt, all done
                    
                } else {
                    /// Didn't show storekit prompt, present app store manually
                    let alertView : UIAlertController = UIAlertController(title: reviewTitle, message: reviewMessage, preferredStyle: UIAlertControllerStyle.alert)
                    alertView.addAction(UIAlertAction(title: cancelButtonTitle, style:UIAlertActionStyle.cancel, handler: {
                        (alert: UIAlertAction!) in
