constraint system