         return nil
     }
 
+    
     func checkIsSyncReady() -> Bool {
-        struct Static {
-            static var isReady = false
-        }
-        
-        if Static.isReady {
+        
+        if syncReadyLock {
             return true
         }
 
         let mirror = Mirror(reflecting: isSyncFullyInitialized)
         let ready = mirror.children.reduce(true) { $0 && $1.1 as! Bool }
         if ready {
-            Static.isReady = true
+            syncReadyLock = true
             NSNotificationCenter.defaultCenter().postNotificationName(NotificationSyncReady, object: nil)
             
             func startFetching() {

            }
            
            if value == nil {
                // Delete device too
                syncDeviceId = nil
                fetchTimestamp = 0
            }
            
            NSUserDefaults.standardUserDefaults().setObject(value, forKey: prefNameSeed)

    /// This must be public so it can be added into the view hierarchy 
    var webView: WKWebView!

    // Should not be accessed directly
    private var syncReadyLock = false
    var isSyncFullyInitialized = (syncReady: Bool, fetchReady: Bool, sendRecordsReady: Bool, resolveRecordsReady: Bool, deleteUserReady: Bool, deleteSiteSettingsReady: Bool, deleteCategoryReady: Bool)(false, false, false, false, false, false, false)
    
    var isInSyncGroup: Bool {
