code: def get_flux_biases_from_cache(cur, chains, system_name, chain_strength, max_age=3600):
      
  
      select = \
          """
          SELECT
              flux_bias
          FROM flux_bias_view WHERE
              chain_length = :chain_length AND
              nodes = :nodes AND
              chain_strength = :chain_strength AND
              system_name = :system_name AND
              insert_time >= :time_limit;
          """
  
      encoded_data = {'chain_strength': _encode_real(chain_strength),
                      'system_name': system_name,
                      'time_limit': datetime.datetime.now() + datetime.timedelta(seconds=-max_age)}
  
      flux_biases = {}
      for chain in chains:
          encoded_data['chain_length'] = len(chain)
          encoded_data['nodes'] = json.dumps(sorted(chain), separators=(',', ':'))
  
          row = cur.execute(select, encoded_data).fetchone()
          if row is None:
              raise MissingFluxBias
          flux_bias = _decode_real(*row)
  
          if flux_bias == 0:
              continue
  
          flux_biases.update({v: flux_bias for v in chain})
  
      return flux_biases
docs: Determine the flux biases for all of the the given chains, system and chain strength.
  
      Args:
          cur (:class:`sqlite3.Cursor`):
              An sqlite3 cursor. This function is meant to be run within a :obj:`with` statement.
  
          chains (iterable):
              An iterable of chains. Each chain is a collection of nodes. Chains in embedding act as
              one node.
  
          system_name (str):
              The unique name of a system.
  
          chain_strength (float):
              The magnitude of the negative quadratic bias that induces the given chain in an Ising
              problem.
  
          max_age (int, optional, default=3600):
              The maximum age (in seconds) for the flux_bias offsets.
  
      Returns:
          dict: A dict where the keys are the nodes in the chains and the values are the flux biases.