anchor.diff:      static member        Return (_:'a ResizeArray, _:Return) = fun x -> ResizeArray<'a>(Seq.singleton x)
   
       //Restricted
  -    static member Return (_:'a Nullable  , _:Return) = fun (x:'a  ) -> Nullable x:'a Nullable
       static member Return (_:string       , _:Return) = fun (x:char) -> string x : string
       static member Return (_:StringBuilder, _:Return) = fun (x:char) -> new StringBuilder(string x):StringBuilder
       static member Return (_:'a Set       , _:Return) = fun (x:'a  ) -> Set.singleton x
  
positive.code:     static member inline InvokeOnNonPrimitiveTypes x (f:_->'R) : 'R =
          let inline call_3 (b:^b,c:^c,f:^f) = ((^b or ^c) : (static member Bind: _*_ -> _) b, f)
          call_3 (x, Unchecked.defaultof<'R>, f) :'R
  
  [<Extension;Sealed>]
  type Join() =
  
negative.code:     [<Extension>]static member Map (x:_ IObservable  , f, [<Optional>]impl:Map) = Observable.map f x
  
      // Restricted
      [<Extension>]static member Map (x:string         , f, [<Optional>]impl:Map) = String.map f x
      [<Extension>]static member Map (x:StringBuilder  , f, [<Optional>]impl:Map) = new StringBuilder(String.map f (x.ToString()))
      [<Extension>]static member Map (x:Set<_>         , f, [<Optional>]impl:Map) = Set.map f x
  