anchor.diff:      let [<Literal>] BindingKeywords =
           "v2 v4 v2i v4i color get getAsStream set setAsStream update streamEvent stream bind self parent grandparent game toData monitor " +
           "resolve relate selectScreen tryGetIsSelectedScreenIdling tryGetIsSelectedScreenTransitioning " +
  -        "isSelectedScreenIdling isSelectedScreenTransitioning tryTransitionScreen transitionScreen setScreenSplash " +
  -        "createDissolveScreenFromGroupFile6 createDissolveScreenFromGroupFile createSplashScreen6 createSplashScreen " +
  -        "reloadExistingAssets tryReloadAssets getCurrentSongOpt getCurrentSongPosition " +
  -        "getMasterAudioVolume getMasterSoundVolume getMasterSongVolume setMasterAudioVolume " +
  -        "setMasterSoundVolume setMasterSongVolume playSong playSong6 " +
  -        "playSound playSound3 fadeOutSong stopSong " +
  -        "hintAudioPackageUse hintAudioPackageDisuse reloadAudioAssets hintRenderPackageUse " +
  -        "hintRenderPackageDisuse reloadRenderAssets bodyExists getBodyContactNormals " +
  -        "getBodyLinearVelocity getBodyToGroundContactNormals getBodyToGroundContactNormalOpt getBodyToGroundContactTangentOpt " +
  -        "isBodyOnGround createBody createBodies destroyBody " +
  -        "destroyBodies createJoint createJoints destroyJoint " +
  -        "destroyJoints setBodyEnabled setBodyPosition setBodyRotation " +
  -        "setBodyLinearVelocity applyBodyLinearImpulse setBodyAngularVelocity applyBodyAngularImpulse " +
  -        "applyBodyForce localizeBodyShape isMouseButtonDown getMousePosition " +
  -        "isKeyboardKeyDown expandContent destroyImmediate destroy " +
  +        "isSelectedScreenIdling isSelectedScreenTransitioning tryTransitionScreen transitionScreen " +
  +        "setScreenSplash createDissolveScreenFromGroupFile6 createDissolveScreenFromGroupFile createSplashScreen6 " +
  +        "createSplashScreen reloadExistingAssets tryReloadAssets getCurrentSongOpt " +
  +        "getCurrentSongPosition getMasterAudioVolume getMasterSoundVolume getMasterSongVolume " +
  +        "setMasterAudioVolume setMasterSoundVolume setMasterSongVolume playSong " +
  +        "playSong6 playSound playSound3 fadeOutSong " +
  +        "stopSong hintAudioPackageUse hintAudioPackageDisuse reloadAudioAssets " +
  +        "hintRenderPackageUse hintRenderPackageDisuse reloadRenderAssets bodyExists " +
  +        "getBodyContactNormals getBodyLinearVelocity getBodyToGroundContactNormals getBodyToGroundContactNormalOpt " +
  +        "getBodyToGroundContactTangentOpt isBodyOnGround createBody createBodies " +
  +        "destroyBody destroyBodies createJoint createJoints " +
  +        "destroyJoint destroyJoints setBodyEnabled setBodyPosition " +
  +        "setBodyRotation setBodyLinearVelocity applyBodyLinearImpulse setBodyAngularVelocity " +
  +        "applyBodyAngularImpulse applyBodyForce localizeBodyShape isMouseButtonDown " +
  +        "getMousePosition isKeyboardKeyDown expandContent destroyImmediate " +
  +        "destroy tryGetParent getParent getChildren " +
           "getExists isSelected ignorePropertyBindings getEntities0 " +
           "getGroups0 writeGameToFile readGameFromFile getScreens " +
           "setScreenDissolve destroyScreen createScreen createDissolveScreen " +
           "writeScreenToFile readScreenFromFile getGroups createGroup " +
           "destroyGroup destroyGroups writeGroupToFile readGroupFromFile " +
  -        "getEntities getEntityRoots getEntitySovereigns destroyEntity " +
  -        "destroyEntities tryPickEntity writeEntityToFile createEntity " +
  -        "readEntityFromFile renameEntity trySetEntityOverlayNameOpt trySetEntityFacetNames " +
  +        "getEntitiesFlattened getEntities getEntitiesSovereign destroyEntity " +
  +        "destroyEntities tryPickEntity writeEntityToFile readEntityFromFile " +
  +        "createEntity renameEntity trySetEntityOverlayNameOpt trySetEntityFacetNames " +
           "getEyeCenter setEyeCenter getEyeSize getEyeMargin " +
           "setEyeSize getEyeBounds getOmniScreenOpt setOmniScreenOpt " +
           "getOmniScreen setOmniScreen getSelectedScreenOpt constrainEyeBounds " +
  
positive.code:              ("expandContent", { Fn = evalExpandContentBinding; Pars = [|"setScreenSplash"; "content"; "origin"; "owner"; "parent"|]; DocOpt = None })
               ("destroyImmediate", { Fn = evalDestroyImmediateBinding; Pars = [|"simulant"|]; DocOpt = None })
               ("destroy", { Fn = evalDestroyBinding; Pars = [|"simulant"|]; DocOpt = None })
               ("getExists", { Fn = evalGetExistsBinding; Pars = [|"simulant"|]; DocOpt = None })
               ("isSelected", { Fn = evalIsSelectedBinding; Pars = [|"simulant"|]; DocOpt = None })
               ("ignorePropertyBindings", { Fn = evalIgnorePropertyBindingsBinding; Pars = [|"simulant"|]; DocOpt = None })
  
negative.code:             let value = Scripting.Ring (Set.ofSeq (Seq.map (fun value -> let str = scstring value in if Symbol.shouldBeExplicit str then Scripting.String str else Scripting.Keyword str) value))
              struct (value, world)
          with exn ->
              let violation = Scripting.Violation (["InvalidBindingInvocation"], "Could not invoke binding 'getEntitiesFlattened' due to: " + scstring exn, None)
              struct (violation, World.choose oldWorld)
  
      let getEntities group world =
          let oldWorld = world
          try
              let struct (group, world) =
  