<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def read_shapefile(fname, region_col=None, **kwargs):
 """Read a shapefile for use in regional plots. Shapefiles must have a column denoted as "region". Parameters fname : string path to shapefile to be read by geopandas region_col : string, default None if provided, rename a column in the shapefile to "region" """

    gdf = gpd.read_file(fname, **kwargs)
    if region_col is not None:
        gdf = gdf.rename(columns={region_col: 'region'})
    if 'region' not in gdf.columns:
        raise IOError('Must provide a region column')
    gdf['region'] = gdf['region'].str.upper()
    return gdf