width is computed intelligently