working on constraints
merging
adding more tests around constraints