code: def get_exchange_symbols(exchange_name, is_local=False):
      """
      The de-serialized content of the exchange's symbols.json.
  
      Parameters
      ----------
      exchange_name: str
      is_local: bool
      environ:
  
      Returns
      -------
      Object
  
      """
      filename = get_exchange_symbols_filename(exchange_name, is_local)
  
      if not is_local and (
          not os.path.isfile(filename)
          or pd.Timedelta(
              pd.Timestamp("now", tz="UTC")
              - last_modified_time(filename)
          ).days
          > 1
      ):
          try:
              download_exchange_symbols(exchange_name)
          except Exception:
              pass
  
      if os.path.isfile(filename):
          with open(filename) as data_file:
              try:
                  data = json.load(data_file, cls=ExchangeJSONDecoder)
                  return data
  
              except ValueError:
                  return dict()
      else:
          raise ExchangeSymbolsNotFound(
              exchange=exchange_name, filename=filename
          )
  
imports: import hashlib
  import json
  import os
  import pickle
  import shutil
  from datetime import date, datetime
  import pandas
  from catalyst.assets._assets import TradingPair
  from six import string_types
  from six.moves.urllib import request
  from catalyst.constants import DATE_FORMAT, SYMBOLS_URL
  from catalyst.exchange.exchange_errors import ExchangeSymbolsNotFound
  from catalyst.exchange.utils.serialization_utils import ExchangeJSONEncoder, ExchangeJSONDecoder
  from catalyst.utils.memoize import weak_lru_cache
  from catalyst.utils.paths import data_root, ensure_directory, last_modified_time
label_desc: Use image node_id 7 for calling a global function with example usage: get_exchange_symbols(exchange_name, is_local) and returns: data, dict