         delegate?.visitDidStart(self)
         webView.issueRequestForVisitWithIdentifier(identifier)
 
-        afterNavigationCompletion {
+        afterNavigationCompletion { [unowned self] in
             self.webView.changeHistoryForVisitWithIdentifier(identifier)
             self.webView.loadCachedSnapshotForVisitWithIdentifier(identifier)
         }


    func webView(webView: TLWebView, didCompleteRequestForVisitWithIdentifier identifier: String) {
        if identifier == self.identifier {
            afterNavigationCompletion {
                self.delegate?.visitWillLoadResponse(self)
                self.webView.loadResponseForVisitWithIdentifier(identifier)
            }


    private func finishRequest() {
        if requestStarted && !requestFinished {
            requestFinished = true
            delegate?.visitRequestDidFinish(self)
        }
    }
