anchor.diff:          then (fun _ x -> x)
           else (fun pi inp -> customParameterValueMap.Invoke(pi,inp) )
   
  +    let iicgToOptFun (itemInCollGenerator:Translator.ItemInCollectionImpl) =
  +        if itemInCollGenerator = null
  +        then None
  +        else  
  +            (fun (itm:string) (coll:string) -> itemInCollGenerator.Invoke(itm, coll)) |> Some
  +
  +    let optionalIicgToOptFun itemInCollGenerator =
  +        match itemInCollGenerator with
  +        | Some itemInCollGenerator ->
  +            (fun (itm:string) (coll:string) -> 
  +                (itemInCollGenerator:Translator.ItemInCollectionImpl).Invoke(itm, coll)) |> Some
  +        |_ -> None
  +
   module ExpressionToSqlImpl =
       let translateFsSingle<'T>
               quoter
               (conditions:Quotations.Expr<('T -> bool)>)
               includeWhere
               customNameExtractor
  -            customParameterValueMap =
  +            customParameterValueMap 
  +            itemInCollGenerator =
   
           let nameExtractor = customNameExtractor |> Option.defaultValue (fun (x:System.Reflection.MemberInfo) -> x.Name)
           let parameterValueMap = customParameterValueMap |> Option.defaultValue (fun _ x -> x)
  
positive.code:             |Some p, Some mapper -> {this with Param = Some (mapper p)}
              |_ -> this
      
      let nullableType = typedefof<Nullable<_>>
  
      let literalToSql (v:obj) =
          match v with
  
negative.code:         Hlp.translateOne quoter 
              nameExtractor
              parameterValueMap
              (Hlp.optionalIicgToOptFun itemInCollGenerator)
              (LinqHelpers.conv conditions)
              (Option.defaultValue true includeWhere)
  
  