Which one would you prefer, and why?

> 
> 1. It should be able to handle dependencies between A and B, which **constitute** an important class of problems.
> 2. It should be able to handle dependencies between A and B, which **constitutes** an important class of problems.
> 
> 
> 

You might then ask, “What, specifically, constitutes an important class of problems? Is it the handling of dependencies or those dependencies themselves?” I personally don’t see much of a difference. The presence of dependencies kind of implies that you have to do something about them. And sure, you can choose to ignore them. My question is then, What does a native speaker’s intuition tell? Which word would surprise a native speaker the least?