resolved ambiguous syntax on generic types into function parameters definition