code: def prune_fcst_df(
      df: pd.DataFrame, base_reconciliation_model_name: str
  ) -> pd.DataFrame:
      # keep certain columns
      columns_to_keep = ["ds"]
      columns_to_keep.extend(
          [x for x in df.columns if base_reconciliation_model_name in x]
      )
      df = df[columns_to_keep]
  
      # rename columns
      mapper = {
          e: (
              "mean"
              if e == base_reconciliation_model_name
              else e.replace(f"{base_reconciliation_model_name}-", "")
          )
          for e in df.columns
      }
      df = df.rename(columns=mapper)
  
      return df
  
imports: from typing import List, Optional, Union, Any, Dict
  import numpy
  import pandas
  from statsforecast import StatsForecast
  from hierarchicalforecast.core import HierarchicalReconciliation
  from hierarchicalforecast.core import _build_fn_name
  from gluonts.core.component import validated
  from gluonts.dataset import DataEntry
  from gluonts.dataset.util import forecast_start
  from gluonts.model.predictor import RepresentablePredictor
  from gluonts.model.forecast import QuantileForecast
  from gluonts.ext.statsforecast import ModelConfig
label_desc: Use image node_id 5 for calling a global function with example usage: prune_fcst_df(df, base_reconciliation_model_name) and returns: df