import string


def LazyFormat(s, *args, **kwargs):
  """Format a string, allowing unresolved parameters to remain unresolved.

  Args:
    s: str, The string to format.
    *args: [str], A list of strings for numerical parameters.
    **kwargs: {str:str}, A dict of strings for named parameters.

  Returns:
    str, The lazily-formatted string.
  """

  class SafeDict(dict):

    def __missing__(self, key):
      return '{' + key + '}'
  return string.Formatter().vformat(s, args, SafeDict(kwargs))