             transcriptWC = TranscriptWindowController(session: session)
             transcriptWC.showWindow(sender)
             transcriptWC.jumpToTimeCallback = { [unowned self] time in
-                if let player = self.player {
-                    player.seekToTime(CMTimeMakeWithSeconds(time, 30))
-                }
+                guard let player = self.player else { return }
+                player.seekToTime(CMTimeMakeWithSeconds(time, 30))
             }
             transcriptWC.transcriptReadyCallback = { [unowned self] transcript in
                 self.setupTranscriptSync(transcript)

    var boundaryObserver: AnyObject?
    
    func setupTranscriptSync(transcript: WWDCSessionTranscript) {
        if self.transcriptWC == nil {
            return
        }
        
        boundaryObserver = player?.addBoundaryTimeObserverForTimes(transcript.timecodes, queue: dispatch_get_main_queue()) { [unowned self] in
            if self.transcriptWC == nil {
                return
            }
            
            let roundedTimecode = WWDCTranscriptLine.roundedStringFromTimecode(CMTimeGetSeconds(self.player!.currentTime()))
            self.transcriptWC.highlightLineAt(roundedTimecode)
        }

    }
    
    func showTranscriptWindow(sender: AnyObject?) {
        guard session != nil else { return }
        
        if transcriptWC != nil {
            if let window = transcriptWC.window {
