Added constraint solver