anchor.diff:      static member Set(name:string, value:Dynamic, localScopes:ObjectList, closure:Closure, maxScopeLevel:int) = 
         if setInObjects name value localScopes
           then  true
  -        else  let found, _ = scanObjects (fun (x:Scope) -> setInObjects name value x.Objects, null) closure.Scopes maxScopeLevel
  +        else  let found, _ = scanScopes (fun (x:Scope) -> setInObjects name value x.Objects, null) closure.Scopes maxScopeLevel
                 found
   
     (**)
  
positive.code:       let found, item = getFromObjects name localScopes
        if found 
          then  item
          else  let found, item = scanObjects (fun (x:Scope) -> getFromObjects name x.Objects) closure.Scopes (-1)
                if found 
                  then item
                  else closure.Globals.Get name
  
negative.code: type ObjectList = Object ResizeArray
  
  module Variables = 
    let rec private scanScopes fnc (lst:Scope ResizeArray) topScope = 
      let rec scanScopes n = 
        if n >= lst.Count
          then  false, null
          else  let scope = lst.[n]
                if scope.ScopeLevel < topScope 
                  then  false, null
                  else  let pair = fnc scope
                        if fst pair
                          then pair
                          else scanScopes (n+1)
      scanScopes 0
  
    let private setInObjects (name:string) (value:Dynamic) scopes = 
      if scopes = null
  