2 sided constraints implemented