hard constraint