anchor.diff:                                      o.Level <- max o.Level (level + 1)
                                   | _ -> ()
   
  -                            outOfDate <- false
  +                            
                               r
                           finally
                               stack.Pop() |> ignore
  
positive.code:                                 else Transaction.RunningLevel
  
                              if level > maxAllowedLevel then
                                  // i am a pull from the future   
                                  raise <| LevelChangedException(this, level, stack.Count - 1)
  
  
  
negative.code:                             // This property must therefore be maintained for every
                              // path in the entire system.
                              let r = f()
                              outOfDate <- false
  
                              // if the object's level just got greater than or equal to
                              // the level of the running transaction (if any)
  