anchor.diff:                                              | (_, _) -> world
   
                                           // attempt to start threads
  -                                        let (rendererTaskOpt, audioPlayerTaskOpt, world) =
  +                                        let (rendererThreadOpt, audioPlayerThreadOpt, world) =
                                               match (SdlDeps.getRenderContextOpt sdlDeps, SDL.SDL_WasInit SDL.SDL_INIT_AUDIO <> 0u) with
                                               | (Some renderContext, true) ->
   
  
positive.code:                                                 let world = World.setAudioPlayer audioPlayer world
                                          
                                                  // start the renderer thread
                                                  let rendererTask = Task.Factory.StartNew (fun () ->
                                                      match Constants.Render.ScreenClearing with
                                                      | NoClear -> ()
                                                      | ColorClear (r, g, b) ->
  
negative.code: 
                                          // attempt to finish threads
                                          let world =
                                              match (rendererThreadOpt, audioPlayerThreadOpt) with
                                              | ((Some rendererThread), (Some audioPlayerThread)) ->
  
                                                  // finish all threads
                                                  let rendererResult = rendererThread |> Async.AwaitTask |> Async.RunSynchronously
                                                  let audioPlayerResult = audioPlayerThread |> Async.AwaitTask |> Async.RunSynchronously
  
                                                  // apply their results
                                                  let world = Subsystem.applyResult rendererResult (World.getRenderer world) world
  