new prereq logic