     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
         // Override point for customization after application launch.
         // Initialize and configure PubNub client instance
-        let configuration = PNConfiguration(publishKey: "demo", subscribeKey: "demo")
+        let configuration = PNConfiguration(publishKey: PubNubKeys.publish, subscribeKey: PubNubKeys.subscribe)
         self.client = PubNub.client(with: configuration)
         self.client.add(self)
         

            // Message has been received on channel stored in message.data.channel.
        }
        
        print("Received message: \(message.data.message) on channel \(message.data.channel) " +
            "at \(message.data.timetoken)")
    }
}




extension AppDelegate {
    
    // Handle new message from one of channels on which client has been subscribed.
    func client(_ client: PubNub, didReceiveMessage message: PNMessageResult) {
        

        // Handle new message stored in message.data.message
        if message.data.actualChannel != message.data.subscribedChannel {
            
            // Message has been received on channel group stored in message.data.subscription.
        }
