         }
 
 		if cassette != nil {
-			fatalError("[DVR] Invalid request. The request was not found in the cassette.")
+			print("[DVR] Invalid request. The request was not found in the cassette.")
+            abort()
 		}
 
         // Cassette is missing. Record.
 		if session.recordingEnabled == false {
-			fatalError("[DVR] Recording is disabled.")
+			print("[DVR] Recording is disabled.")
+            abort()
 		}
 
         // Create directory

            
            //Ensure we have a response
            guard let response = response else {
                fatalError("[DVR] Failed to persist cassette, because the task returned a nil response.")
            }
            
            // Create cassette

        if let interaction = cassette?.interactionForRequest(request) {
            // Forward completion
            if let completion = completion {
                print("[DVR] Replaying '\(session.cassetteName)'")
                dispatch_async(queue) {
                    completion(interaction.responseData, interaction.response, nil)
                }
