anchor.diff:                  | None -> asyncVal { return ResolverError { Name = name; Message = ctx.Schema.ParseError (GraphQLException (sprintf "GraphQL Interface '%s' is not implemented by the type '%s'" idef.Name resolvedDef.Name)); PathToOrigin = [] } }
               | None ->
                   if ctx.ExecutionInfo.IsNullable
  -                then asyncVal { return ResolverObjectNode { Name = name; Value = None; Children = [| |] } }
  +                then asyncVal { return ResolverObjectNode { Name = name; Value = None; DeferredValue = value; Children = [| |] } }
                   else nullResolverError name
           | Union udef ->
               let possibleTypesFn = ctx.Schema.GetPossibleTypes
  
positive.code:                 | ResolverError e when not info.IsNullable -> propagateError name e
                  | _ when not info.IsNullable && tree.Value.IsNone -> asyncVal { return ResolverError { Name = name; Message = ctx.Schema.ParseError(GraphQLException (sprintf "Non-Null field %s resolved as a null!" info.Identifier)); PathToOrigin = [info.Identifier]}}
                  | t -> build (t::acc) xs)
          | [] -> asyncVal { return ResolverObjectNode{ Name = name; Value = Some value; Children = acc |> List.rev |> List.toArray } }
      build [] fields
  
  let internal compileSubscriptionField (subfield: SubscriptionFieldDef) = 
  
negative.code:                                     | t -> build (t::acc) xs
                                  return res
                              }
                  | [] -> asyncVal { return ResolverListNode { Name = name; Value = value; DeferredValue = value; Children = acc |> List.rev |> List.toArray } }
              match value with
              | None when not ctx.ExecutionInfo.IsNullable -> nullResolverError name
              | None -> asyncVal{ return ResolverListNode{ Name = name; Value = None; DeferredValue = value; Children = [| |]; } }
              | ObjectOption (:? System.Collections.IEnumerable as enumerable) ->
                  enumerable
                  |> Seq.cast<obj>
  