more rectangle functions