I notice you defined all of your y coords based
on the height .. but you used subtraction, so you're
still making an assumption about the minimum height.
Any time you can define some constraint on a value given
another value, you should consider doing so in your code.
That way if someone says "Hey this is cool, but it's a
little big so i'll change the size to 50x60" your code can
deal with the change flawlessly...