All set constraints implemented. Need to test better.