more checks on constraints for valid input