open Microsoft.FSharp.Linq
[<CustomOperation("where2",MaintainsVariableSpace=true,AllowIntoPattern=true)>]
member this.Where2 (source, [<ProjectionParameter>] predicate) = this.Where(source, predicate)
[<CustomOperation("countAsync")>]
member __.CountAsync (source:QuerySource<'T,'Q>) = async { return System.Linq.Enumerable.Count source.Source }
printfn "%A" (Async.RunSynchronously x)