added constraint explanation