using System;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var rx = new Regex(@"""(?=[^}]*(?:}})*[^}]*$)|(?<=^[^{]*(?:{{)*)""");
Console.WriteLine(string.Format("$@\"{0}\"",rx.Replace("foo {bar}","\"\"")));
Console.WriteLine(string.Format("$@\"{0}\"",rx.Replace("\"foo\" {bar}","\"\"")));
Console.WriteLine(string.Format("$@\"{0}\"",rx.Replace("foo {\"bar\"}","\"\"")));
Console.WriteLine(string.Format("$@\"{0}\"",rx.Replace("foo {{\"bar\"}}","\"\"")));
Console.WriteLine(string.Format("$@\"{0}\"",rx.Replace("foo {{{\"bar\"}}}","\"\"")));
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uSU87CnVzaW5nIFN5c3RlbS5UZXh0Owp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQl2YXIgcnggPSBuZXcgUmVnZXgoQCIiIig/PVtefV0qKD86fX0pKltefV0qJCl8KD88PV5bXntdKig/Ont7KSopIiIiKTsKCQlDb25zb2xlLldyaXRlTGluZShzdHJpbmcuRm9ybWF0KCIkQFwiezB9XCIiLHJ4LlJlcGxhY2UoImZvbyB7YmFyfSIsIlwiXCIiKSkpOwoJCUNvbnNvbGUuV3JpdGVMaW5lKHN0cmluZy5Gb3JtYXQoIiRAXCJ7MH1cIiIscnguUmVwbGFjZSgiXCJmb29cIiB7YmFyfSIsIlwiXCIiKSkpOwoJCUNvbnNvbGUuV3JpdGVMaW5lKHN0cmluZy5Gb3JtYXQoIiRAXCJ7MH1cIiIscnguUmVwbGFjZSgiZm9vIHtcImJhclwifSIsIlwiXCIiKSkpOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKHN0cmluZy5Gb3JtYXQoIiRAXCJ7MH1cIiIscnguUmVwbGFjZSgiZm9vIHt7XCJiYXJcIn19IiwiXCJcIiIpKSk7CiAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoc3RyaW5nLkZvcm1hdCgiJEBcInswfVwiIixyeC5SZXBsYWNlKCJmb28ge3t7XCJiYXJcIn19fSIsIlwiXCIiKSkpOwoJfQp9