Improve return constraints; fix