         if(!self.ignoreURL) {
             if !self.isInReadingList {
                 actions.append(UIPreviewAction(title: TabPeekViewController.PreviewActionAddToReadingList, style: .Default) { previewAction, viewController in
-                    self.delegate?.tabPeekDidAddToReadingList(self.tab)
+                    guard let tab = self.tab else { return }
+                    self.delegate?.tabPeekDidAddToReadingList(tab)
                 })
             }
             if !self.isBookmarked {
                 actions.append(UIPreviewAction(title: TabPeekViewController.PreviewActionAddToBookmarks, style: .Default) { previewAction, viewController in
-                    self.delegate?.tabPeekDidAddBookmark(self.tab)
+                    guard let tab = self.tab else { return }
+                    self.delegate?.tabPeekDidAddBookmark(tab)
                     })
             }
             if self.hasRemoteClients {

            // as we are only allowed 4 in total and we always want to display close tab
            if actions.count < 3 {
                actions.append(UIPreviewAction(title: TabPeekViewController.PreviewActionCopyURL, style: .Default) { previewAction, viewController in
                    guard let url = self.tab.url where url.absoluteString.characters.count > 0 else { return }
                    let pasteBoard = UIPasteboard.generalPasteboard()
                    pasteBoard.URL = url
                    })
            }
        }
        actions.append(UIPreviewAction(title: TabPeekViewController.PreviewActionCloseTab, style: .Destructive) { previewAction, viewController in
            self.delegate?.tabPeekDidCloseTab(self.tab)
            })

        return actions


    override func viewDidLoad() {
        super.viewDidLoad()
        previewAccessibilityLabel = NSLocalizedString("Preview of \(tab?.webView?.accessibilityLabel)", tableName: "3DTouchActions", comment: "Accessibility Label for preview in Tab Tray of current tab")
        // if there is no screenshot, load the URL in a web page
        // otherwise just show the screenshot
        setupWebView(tab?.webView)
        guard let screenshot = tab?.screenshot else { return }
        setupWithScreenshot(screenshot)
    }

