generic constraints resolving