     }
     
     public func adsManagerDidRequestContentPause(_ adsManager: IMAAdsManager!) {
-        self.delegate?.adsPlugin(self, didReceive: AdEvents.adDidRequestPause())
+        self.notify(event: AdEvents.adDidRequestPause())
         self.isAdPlayback = true
     }
     
     public func adsManagerDidRequestContentResume(_ adsManager: IMAAdsManager!) {
         self.showLoadingView(false, alpha: 0)
-        self.delegate?.adsPlugin(self, didReceive: AdEvents.adDidRequestResume())
+        self.notify(event: AdEvents.adDidRequestResume())
         self.isAdPlayback = false
     }
     

    // MARK: IMAWebOpenerDelegate
    
    public func webOpenerWillOpenExternalBrowser(_ webOpener: NSObject) {
        self.delegate?.adsPlugin(self, didReceive: AdEvents.adWebOpenerWillOpenExternalBrowser(webOpener: webOpener))
    }
    
    public func webOpenerWillOpen(inAppBrowser webOpener: NSObject!) {
        self.delegate?.adsPlugin(self, didReceive: AdEvents.adWebOpenerWillOpenInAppBrowser(webOpener: webOpener))
    }
    
    public func webOpenerDidOpen(inAppBrowser webOpener: NSObject!) {
        self.delegate?.adsPlugin(self, didReceive: AdEvents.adWebOpenerDidOpenInAppBrowser(webOpener: webOpener))
    }
    
    public func webOpenerWillClose(inAppBrowser webOpener: NSObject!) {
        self.delegate?.adsPlugin(self, didReceive: AdEvents.adWebOpenerWillCloseInAppBrowser(webOpener: webOpener))
    }
    
    public func webOpenerDidClose(inAppBrowser webOpener: NSObject!) {
        self.delegate?.adsPlugin(self, didReceive: AdEvents.adWebOpenerDidCloseInAppBrowser(webOpener: webOpener))
    }
}

        var data = [String : TimeInterval]()
        data["mediaTime"] = mediaTime
        data["totalTime"] = totalTime
        self.notify(event: AdEvents.adDidProgressToTime(mediaTime: mediaTime, totalTime: totalTime))
    }
    
    // MARK: AVPictureInPictureControllerDelegate
