natural constraints implementation