human
Give me a Python program to find the zipline home given the following:
Complete the below
def fetch_symbol_metadata_frame(api_key, cache, retries=5, environ=None, show_progress=False):

    ''''Download Quandl symbol metadata.
    Parameters
    api_key : str
    The quandl api key to use. If this is None then no api key will be
    sent.
    cache : DataFrameCache
    The cache to use for persisting the intermediate data.
    retries : int, optional
    The number of times to retry each request before failing.
    environ : mapping[str -> str], optional
    The environment to use to find the zipline home. By default this
    is ``os.environ``.
    show_progress : bool, optional
    Show a progress bar for the download of this data.
    Returns
    metadata_frame : pd.DataFrame
    A dataframe with the following columns:
    symbol: the asset\'s symbol
    name: the full name of the asset
    start_date: the first date of data for this asset
    end_date: the last date of data for this asset
    auto_close_date: end_date + one day
    exchange: the exchange for the asset.
this is always \'quandl\'
    The index of the dataframe will be used for symbol->sid mappings but
    otherwise does not have specific meaning.'
    '''
assistant
#Here is Python program to find the zipline home.
    raw_iter = _fetch_raw_metadata(api_key, cache, retries, environ)
    def item_show_func(_, _it=iter(count())):
        ('Downloading    page:    %d' % next(_it))
    with maybe_show_progress(raw_iter, show_progress, item_show_func=item_show_func, label='Downloading    WIKI    metadata:    ') as blocks:
        data = pd.concat(blocks, ignore_index=True).rename(columns={'dataset_code': 'symbol', 'name': 'asset_name', 'oldest_available_date': 'start_date', 'newest_available_date': 'end_date'}).sort_values('symbol')
    data = data[(~ data.symbol.isin(excluded_symbols))]
    data.asset_name = data.asset_name.str.split('    \\(', 1).str.get(0)
    data['exchange'] = 'QUANDL'
    data['auto_close_date'] = (data['end_date'] + pd.Timedelta(days=1))
    return data