public String getErrorDisplay(String s) {StringBuilder buf = new StringBuilder();for (char c : s.toCharArray()) {buf.append(getErrorDisplay(c));}return buf.toString();}
public virtual string GetErrorDisplay(string s){StringBuilder buf = new StringBuilder();for (var i = 0; i < s.Length; ) {var codePoint = Char.ConvertToUtf32(s, i);buf.Append(GetErrorDisplay(codePoint));i += (codePoint > 0xFFFF) ? 2 : 1;}return buf.ToString();}