bottom offset is documented, doesn't need to be derived