anchor.diff:          NameValueLookup.ofList [
               "data", upcast [
                   box <| NameValueLookup.ofList [
  -                    "value", upcast "Buffered 1"
  +                    "value", upcast "Buffered 3"
                   ]
                   upcast NameValueLookup.ofList [
                       "value", upcast "Buffered 2"
                   ]
               ]
  -            "path", upcast [box "testData"; upcast "bufferedList"; upcast [0; 1]]
  +            "path", upcast [box "testData"; upcast "bufferedList"; upcast [2; 1]]
           ]        
       let expectedDeferred2 =
           NameValueLookup.ofList [
               "data", upcast [
                   box <| NameValueLookup.ofList [
  -                    "value", upcast "Buffered 3"
  -                ]
  -            ]
  -            "path", upcast [box "testData"; upcast "bufferedList"; upcast [2]]
  +                    "value", upcast "Buffered 1"
  +                ]
  +            ]
  +            "path", upcast [box "testData"; upcast "bufferedList"; upcast [0]]
           ]   
       let query = parse """{
           testData {
  
positive.code:             if actualDeferred.Count < 2 then actualDeferred.Add(x)
              if actualDeferred.Count = 1 then mre1.Set() |> ignore
              if actualDeferred.Count = 2 then mre2.Set() |> ignore)
          if TimeSpan.FromSeconds(float 4) |> mre1.WaitOne |> not
          then fail "Timeout while waiting for first Deferred GQLResponse"
          if TimeSpan.FromSeconds(float 30) |> mre2.WaitOne |> not
  
negative.code:             if actualDeferred.Count < 2 then actualDeferred.Add(x)
              if actualDeferred.Count = 1 then mre1.Set() |> ignore
              if actualDeferred.Count = 2 then mre2.Set() |> ignore)
          // The first result is a delayed async field, which is set to compute the value for 5 seconds.
          // The second result should come first, almost instantly, as it is not a delayed computed field.
          // Therefore, let's assume that if it does not come in at least 4 seconds, test has failed.
          if TimeSpan.FromSeconds(float 4) |> mre1.WaitOne |> not
          then fail "Timeout while waiting for first deferred result"
  