         for control in controls {
             if let keyPath = control.modelKeyPath {
                 if control.realtime {
-                    removeObserver(self, forKeyPath: keyPath)
-                }
-            }
-        }
-    }
-}
+                    debugPrintln("[SobrKit] remove obersver for keyPath \(keyPath)")
+                    self.removeObserver(self, forKeyPath: keyPath)
+                }
+            }
+        }
+    }
+}

    }
    
    /// See ModelAwareControl protocol
    @IBInspectable var realtime: Bool {
        get {
            if let rt: Bool = associatedObject(self, &AssociatedKey.realtime) {
                return rt

    }
    
    class func swizzle() {
        debugPrintln("[SobrKit] Swizzling UIViewController viewDidLoad & viewWillAppear methods...")
        UIViewController.swizzleMethodSelector("viewDidLoad", withSelector: "new_viewDidLoad", forClass: UIViewController.classForCoder())
        UIViewController.swizzleMethodSelector("viewWillAppear:", withSelector: "new_viewWillAppear:", forClass: UIViewController.classForCoder())
        UIViewController.swizzleMethodSelector("viewWillDisappear:", withSelector: "new_viewWillDisappear:", forClass: UIViewController.classForCoder())
    }
    
    //MARK: - view lifecycle
