     var urbanAirshipRetries = 0
     var savedUrbanAirshipChannelID: String?
     var savedBrazeID: String?
+    var savedDeviceId: String?
 
     open func setupIntegrations(_ integrations:[String]) {
         if integrations.contains("urbanairship") {

                typealias shareInstanceFunc = @convention(c) (AnyObject, Selector) -> AnyObject?
                let curriedImplementation = unsafeBitCast(appBoyShareInstanceIMP, to: shareInstanceFunc.self)
                if let instance = curriedImplementation(brazeClass.self, shareInstanceSel) {
                    if let user = instance.perform(NSSelectorFromString("user"))?.takeUnretainedValue() {
                        if let userId = user.perform(NSSelectorFromString("userID"))?.takeUnretainedValue() as? String {
                            self.mixpanel?.createAlias(userId, distinctId: (self.mixpanel?.distinctId)!)
                            self.mixpanel?.people.set(property: "$braze_external_id", to: userId)
                            self.savedBrazeID = userId
                        }
                    }
                }

                if let push = curriedImplementation(urbanAirship.self, pushSelector) {
                    if let channelID = push.perform(NSSelectorFromString("channelID"))?.takeUnretainedValue() as? String {
                        self.urbanAirshipRetries = 0
                        if channelID != self.savedUrbanAirshipChannelID {
                            self.mixpanel?.people.set(property: "$ios_urban_airship_channel_id", to: channelID)
                            self.savedUrbanAirshipChannelID = channelID
                        }
