anchor.diff:          | None ->
               match evaleds with
               | [|filePath; nameOpt|] -> readScreenFromFile filePath nameOpt world
  -            | _ ->
  -                let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
  -                struct (violation, world)
  -        | Some violation -> struct (violation, world)
  -
  -    let evalGetScreensBinding fnName exprs originOpt world =
  -        let struct (evaleds, world) = World.evalManyInternal exprs world
  -        match Array.tryFind (function Scripting.Violation _ -> true | _ -> false) evaleds with
  -        | None ->
  -            match evaleds with
  -            | [||] -> getScreens  world
  -            | _ ->
  -                let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
  -                struct (violation, world)
  -        | Some violation -> struct (violation, world)
  -
  -    let evalSetScreenDissolveBinding fnName exprs originOpt world =
  -        let struct (evaleds, world) = World.evalManyInternal exprs world
  -        match Array.tryFind (function Scripting.Violation _ -> true | _ -> false) evaleds with
  -        | None ->
  -            match evaleds with
  -            | [|dissolveData; screen|] -> setScreenDissolve dissolveData screen world
  -            | _ ->
  -                let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
  -                struct (violation, world)
  -        | Some violation -> struct (violation, world)
  -
  -    let evalDestroyScreenBinding fnName exprs originOpt world =
  -        let struct (evaleds, world) = World.evalManyInternal exprs world
  -        match Array.tryFind (function Scripting.Violation _ -> true | _ -> false) evaleds with
  -        | None ->
  -            match evaleds with
  -            | [|screen|] -> destroyScreen screen world
  -            | _ ->
  -                let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
  -                struct (violation, world)
  -        | Some violation -> struct (violation, world)
  -
  -    let evalCreateScreenBinding fnName exprs originOpt world =
  -        let struct (evaleds, world) = World.evalManyInternal exprs world
  -        match Array.tryFind (function Scripting.Violation _ -> true | _ -> false) evaleds with
  -        | None ->
  -            match evaleds with
  -            | [|dispatcherName; nameOpt|] -> createScreen dispatcherName nameOpt world
  -            | _ ->
  -                let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
  -                struct (violation, world)
  -        | Some violation -> struct (violation, world)
  -
  -    let evalCreateDissolveScreenBinding fnName exprs originOpt world =
  -        let struct (evaleds, world) = World.evalManyInternal exprs world
  -        match Array.tryFind (function Scripting.Violation _ -> true | _ -> false) evaleds with
  -        | None ->
  -            match evaleds with
  -            | [|dispatcherName; nameOpt; dissolveData|] -> createDissolveScreen dispatcherName nameOpt dissolveData world
               | _ ->
                   let violation = Scripting.Violation (["InvalidBindingInvocation"], "Incorrect number of arguments for binding '" + fnName + "' at:\n" + SymbolOrigin.tryPrint originOpt, None)
                   struct (violation, world)
  
positive.code:         "destroy getSelected tryGetParent getParent " +
          "tryGetGrandparent getGrandparent getChildren getExists " +
          "getEntities0 getLayers0 isSimulantSelected writeGameToFile " +
          "readGameFromFile writeScreenToFile readScreenFromFile getScreens " +
          "setScreenDissolve destroyScreen createScreen createDissolveScreen " +
          "getLayers destroyLayer destroyLayers writeLayerToFile " +
          "readLayerFromFile getEntities destroyEntity destroyEntities " +
          "tryPickEntity writeEntityToFile createEntity readEntityFromFile " +
  
negative.code:             let violation = Scripting.Violation (["InvalidBindingInvocation"], "Could not invoke binding 'readGameFromFile' due to: " + scstring exn, None)
              struct (violation, World.choose oldWorld)
  
      let getScreens world =
          let oldWorld = world
          try
  