code: def make_futures_info(cls):
      future_dict = {}
  
      for future_sid in cls.ASSET_FINDER_FUTURE_SIDS:
          future_dict[future_sid] = {
              "multiplier": 1000,
              "exchange": "CMES",
              "root_symbol": "ABC",
          }
  
      return pd.DataFrame.from_dict(future_dict, orient="index")
  
imports: from collections import OrderedDict
  from numbers import Real
  from nose_parameterized import parameterized
  from numpy.testing import assert_almost_equal
  from numpy import nan, array, full, isnan
  import pandas
  from pandas import DataFrame
  from six import iteritems
  from zipline.data.resample import minute_frame_to_session_frame, DailyHistoryAggregator, MinuteResampleSessionBarReader, ReindexMinuteBarReader, ReindexSessionBarReader
  from zipline.testing import parameter_space
  from zipline.testing.fixtures import WithEquityMinuteBarData, WithBcolzEquityMinuteBarReader, WithBcolzEquityDailyBarReader, WithBcolzFutureMinuteBarReader, ZiplineTestCase
label_desc: Use image node_id 3 for calling the MinuteToDailyAggregationTestCase obj's underlying member method code with example usage: obj.make_futures_info(cls) and returns: pd