code: def _get_raw_lattice_data(lattice_name: str = None):
      
      from pyquil.api._base_connection import get_session, get_json
      from requests.exceptions import MissingSchema
      session = get_session()
      config = PyquilConfig()
  
      try:
          res = get_json(session, f"{config.forest_url}/lattices/{lattice_name}")
      except MissingSchema:
          raise ValueError(f"Error finding lattice `{lattice_name}` at Forest 2.0 server "
                           f"""endpoint `{config.forest_url}`.
  
      Most likely, you're missing an address for the Forest 2.0 server endpoint, or the
      address is invalid. This can be set through the environment variable FOREST_URL or
      by changing the following lines in the QCS config file (by default, at ~/.qcs_config):
  
        [Rigetti Forest]
        url = https://rigetti.com/valid/forest/url""")
      return res["lattice"]
docs: Produces a dictionary of raw data for a lattice as queried from the Forest 2.0 server.
  
      Returns a dictionary of the form
      {
          "name":        the name of the lattice as a string,
          "device_name": the name of the device, given as a string, that the lattice lies on,
          "specs":       a Specs object, serialized as a dictionary,
          "isa":         an ISA object, serialized as a dictionary,
          "noise_model": a NoiseModel object, serialized as a dictionary
      }