Add constraints. Still need to track program points