     /// permission to send locationUpdate
     var hasPermissionToSendLocationUpdates = true
 
+    /// should register push notification
+    var shouldRegisterPushNotification: Bool = true
+
     /// singleton
     public static let shared: BreinifyManager = {
         let instance = BreinifyManager()

            let application = UIApplication.value(forKeyPath: #keyPath(UIApplication.shared)) as! UIApplication
            application.applicationIconBadgeNumber = 0

            //GENERAL Category
            let generalCategory = UNNotificationCategory(identifier: "GENERAL", actions: [], intentIdentifiers: [], options: .customDismissAction)

            //INVITATION Category
            let remindLaterAction = UNNotificationAction(identifier: "remindLater", title: "Remind me later", options: UNNotificationActionOptions(rawValue: 0))
            let acceptAction = UNNotificationAction(identifier: "accept", title: "Accept", options: .foreground)
            let declineAction = UNNotificationAction(identifier: "decline", title: "Decline", options: .destructive)
            let commentAction = UNTextInputNotificationAction(identifier: "comment", title: "Comment", options: .authenticationRequired, textInputButtonTitle: "Send", textInputPlaceholder: "Share your thoughts..")
            let invitationCategory = UNNotificationCategory(identifier: "INVITATION", actions: [remindLaterAction, acceptAction, declineAction, commentAction], intentIdentifiers: [], options: UNNotificationCategoryOptions(rawValue: 0))

            center.setNotificationCategories([generalCategory, invitationCategory])
            center.requestAuthorization(options: [.badge, .sound, .alert]) { (granted, error) in
                //granted = yes, if app is authorized for all of the requested interaction types
                //granted = no, if one or more interaction type is disallowed


        return instance
    }()

    public func willRegisterPushNotification(_ shouldRegister: Bool) {
        self.shouldRegisterPushNotification = shouldRegister
    }

    public func hasRegisteredPushNotification() -> Bool {
        self.shouldRegisterPushNotification
    }

    // Can't init the singleton
    override
