anchor.diff:              Define.Field("live", String, (fun _ d -> d.live))
               Define.Field("iface", InterfaceType, (fun _ d -> d.iface))
               Define.Field("ifaceList", ListOf InterfaceType, (fun _ d -> d.ifaceList))
  -            Define.AsyncField("delayed", String, (fun _ d -> d.delayed))
  +            Define.Field("delayed", DelayedDataType, (fun _ d -> d.delayed))
  +            Define.Field("delayedList", ListOf DelayedDataType, (fun _ d -> d.delayedList))
           ])
  +
  +let delay secs x = async {
  +    do! Async.Sleep(secs * 1000)
  +    return x
  +}
   
   let data = {
          id = "1"
  
positive.code:     iface : InterfaceSubject
      ifaceList : InterfaceSubject list
      mutable live: string
      delayed : Async<string>
  }
  
  and InnerTestSubject = {
  
negative.code:        ifaceList = [
              { D.id = "2000"; value = "D" }; { C.id = "3000"; value = "C2" }
         ]
         delayed = { value = delay 3 "Delayed value" }
         delayedList = [
             { value = async { return "Delayed value 1" } }
             { value = delay 3 "Delayed value 2" }
         ]
     }
  
  let Query =
  