     public let reactiveState = MutableProperty<ReactiveState>(.loading)
 }
 
-extension ApplicationController: ApplicationDelegate {
-    
-    open func applicationDidFinishLoadingWindow(_ application: UIApplication) {
-        applicationDelegates?.forEach { ad in
-            ad.applicationDidFinishLoadingWindow?(application)
-        }
-    }
+extension ApplicationController: UIApplicationDelegate {
     
     open func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]?) -> Bool {
         


@objc public protocol ApplicationDelegate: UIApplicationDelegate {
    
    @objc optional func applicationDidFinishLoadingWindow(_ application: UIApplication)
}

open class ApplicationController: UIResponder {

                        self?.reactiveState.value = .ready
                        
                        self?.applicationDelegates?.forEach { ad in
                            ad.application?(application, didFinishLoading: window)
                        }
                        
                        disposable.dispose()
