improved shape sizing