add a few constraints for sane rotation behavior