type equality constraint