         dataManager.getDataFilesSize()
         
         useClustering = defaults.boolForKey("useClustering")
-    
+        
     }
     
     override func viewDidAppear(animated: Bool) {
-        showWelcomeIfApplicable()
-        
+        if !showWelcomeIfApplicable() {
+            verifyOrRequestLocationAuthorization()
+        }
+    }
+    
+    func verifyOrRequestLocationAuthorization() {
         // Location Authorization
         let authStatus = CLLocationManager.authorizationStatus()
         

            let controller = storyboard.instantiateViewControllerWithIdentifier("InitialController") as UIViewController
            // Display the new view controller.
            presentViewController(controller, animated: true, completion: nil)
        }
    }
    
    func isNewCenterFarFromOldCenter() -> Bool {

        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(MapViewController.updatedSettingsRefresh(_:)), name: "SettingsUpdate", object: nil)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(MapViewController.updateRegionFromNotification(_:)), name: "LocationUpdate", object: nil)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(MapViewController.enableUserLocationInMap(_:)), name: "LocationAuthorized", object: nil)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(MapViewController.welcomeModuleIsDone(_:)), name: "WelcomeModuleDone", object: nil)
    }
    
    func enableUserLocationInMap(notification: NSNotification) {
        mapView.showsUserLocation = true
    }
    
    func welcomeModuleIsDone(notification: NSNotification) {
        verifyOrRequestLocationAuthorization()
    }
    
    func updateRegionFromNotification(notification: NSNotification) {
