anchor.diff:          else
               let lambda arg =
                  let argType,returnType = FSharpType.GetFunctionElements resultType
  -
                  let argArray =
                       match argType with
                       | a when FSharpType.IsTuple(a) -> FSharpValue.GetTupleFields(arg)
                       | a when a = typeof<unit>      -> [| |]
                       | ____________________________ -> [|arg|]
  -
                  let invoker k = 
                       let memberName =
                            memberName |> function | GenericMember (name, targs) ->
  
positive.code:     /// infered casting with automatic implicit convert.
      let invocation (memberName:Calling) (target:obj)  : 'TResult =
          let resultType = typeof<'TResult>
          let (|NoConversion| Conversion|) t = if t = typeof<obj> then NoConversion else Conversion
          let finalConvertResult finalType r :'TResult = 
              match finalType with
              | NoConversion -> r
  
negative.code: 
      let get (propertyName:string) (target:obj) : 'TResult =
          target |> invocation (Member propertyName)
  
      let getChain (chainOfMembers:string seq) (target:obj) : 'TResult =
          let chainOfMembers' = String.concat "." chainOfMembers 
          Dynamic.InvokeGetChain(target, chainOfMembers') |> invocation Direct
   
  