code: def _pypsa_storage_timeseries(network, timesteps, mode=None):
      
  
      mv_storage_timeseries_p_min = []
      mv_storage_timeseries_p_max = []
  
      # MV storage time series
      if mode is 'mv' or mode is None:
          for storage in network.mv_grid.graph.nodes_by_attribute('storage'):
              mv_storage_timeseries_p_min.append(
                  storage.timeseries.p.rename(repr(
                      storage)).to_frame().loc[timesteps])
              mv_storage_timeseries_p_max.append(
                  storage.timeseries.p.rename(repr(
                      storage)).to_frame().loc[timesteps])
  
      storage_df_p_min = pd.concat(
          mv_storage_timeseries_p_min, axis=1)
      storage_df_p_max = pd.concat(
          mv_storage_timeseries_p_max, axis=1)
  
      return storage_df_p_min, storage_df_p_max
docs: Timeseries in PyPSA compatible format for storage instances
  
      Parameters
      ----------
      network : Network
          The eDisGo grid topology model overall container
      timesteps : array_like
          Timesteps is an array-like object with entries of type
          :pandas:`pandas.Timestamp<timestamp>` specifying which time steps
          to export to pypsa representation and use in power flow analysis.
      mode : str, optional
          Specifically retrieve generator time series for MV or LV grid level or
          both. Either choose 'mv' or 'lv'.
          Defaults to None, which returns both timeseries for MV and LV in a
          single DataFrame.
  
      Returns
      -------
      :pandas:`pandas.DataFrame<dataframe>`
          Time series table in PyPSA format