code: def _resolve_parameters(operator_param_value, merged_parameters):
      
      if isinstance(operator_param_value, list):
        return [Query._resolve_parameters(item, merged_parameters)
                for item in operator_param_value]
      if isinstance(operator_param_value, dict):
        return {Query._resolve_parameters(k, merged_parameters): Query._resolve_parameters(
          v, merged_parameters) for k, v in operator_param_value.items()}
      if isinstance(operator_param_value, six.string_types) and merged_parameters:
        return operator_param_value % merged_parameters
      return operator_param_value
docs: Resolve a format modifier with the corresponding value.
  
      Args:
        operator_param_value: The object with the format-modifiers that need to be evaluated. This
            could either be a string, or a more complex type like a list or a dict. This function
            will recursively replace the format-modifiers from all the string values that it can
            find.
        merged_parameters: The full set of parameters that include the user-specified list of
            parameters from the cell-body, and the built-in airflow macros (either the macros or the
            evaluated-values).
  
      Returns:
        The resolved value, i.e. the value with the format modifiers replaced with the corresponding
            parameter-values. E.g. if value is <project-id>.<dataset-id>.logs_%(_ds)s, the returned
            value could be <project-id>.<dataset-id>.logs_2017-12-21.