Extracting the CSP to a more generalizable class