code: def table_width(outer_widths, outer_border, inner_border):
      
      column_count = len(outer_widths)
  
      # Count how much space outer and inner borders take up.
      non_data_space = outer_border
      if column_count:
          non_data_space += inner_border * (column_count - 1)
  
      # Space of all columns and their padding.
      data_space = sum(outer_widths)
      return data_space + non_data_space
docs: Determine the width of the entire table including borders and padding.
  
      :param iter outer_widths: List of widths (with padding) for each column.
      :param int outer_border: Sum of left and right outer border visible widths.
      :param int inner_border: Visible width of the inner border character.
  
      :return: The width of the table.
      :rtype: int