code: def synthesize_request(
      prompt: str, settings: str, environment: Dict[str, str]
  ) -> Request:
      """Substitute `environment` into `prompt` and `settings`."""
      request: Dict[str, Any] = {}
      request["prompt"] = substitute_text(prompt, environment)
      request.update(
          parse_hocon(substitute_text(settings, environment))
      )
      return Request(**request)
  
imports: import mako.template
  from abc import ABC, abstractmethod
  from dataclasses import dataclass
  from typing import Dict, List, Tuple, Any
  from helm.common.general import parse_hocon
  from helm.common.critique_request import CritiqueRequest, CritiqueRequestResult
  from helm.common.perspective_api_request import PerspectiveAPIRequestResult, PerspectiveAPIRequest
  from helm.common.tokenization_request import WindowServiceInfo, TokenizationRequest, TokenizationRequestResult, DecodeRequest, DecodeRequestResult
  from helm.common.request import Request, RequestResult
  from helm.proxy.models import Model
  from helm.proxy.query import Query, QueryResult
  from helm.proxy.accounts import Authentication, Account
label_desc: Use image node_id 3 for calling a global function with example usage: synthesize_request(prompt, settings, environment) and returns: Request