         enterWordsButton.addTarget(self, action: #selector(SEL_enterWords), forControlEvents: .TouchUpInside)
         view.addSubview(enterWordsButton)
         
+        loadingSpinner.startAnimating()
+        
+        loadingView = UIView()
+        loadingView.backgroundColor = UIColor(white: 0.5, alpha: 0.5)
+        loadingView.hidden = true
+        loadingView.addSubview(loadingSpinner)
+        view.addSubview(loadingView)
+        
         edgesForExtendedLayout = .None
         
         cameraView.snp_makeConstraints { (make) in

    var descriptionLabel: UILabel!
    var cameraAccessButton: UIButton!
    var enterWordsButton: UIButton!
    
    override func viewDidLoad() {
        super.viewDidLoad()

                    return
                }
                
                Scanner.Lock = true
                dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(2.0) * Int64(NSEC_PER_SEC)), dispatch_get_main_queue(), {
                    Scanner.Lock = false
                    
                    self.navigationController?.popToRootViewControllerAnimated(true)
                })
                
                // If multiple calls get in here due to race conditions it isn't a big deal
                
                Sync.shared.initializeSync(bytes)
                self.cameraView.cameraOverlaySucess()
                
                // Will be removed on pop
                self.loadingView.hidden = false
                
            } else {
                self.cameraView.cameraOverlayError()
            }
