text: public static string[] Parse(string line){bool insideQuote = false;List<string> result = new List<string>();int quoteCount = 0;StringBuilder sb = new StringBuilder();for (int i = 0; i < line.Length; i++){char c = line[i];if (c == QUOTE){insideQuote = !insideQuote;quoteCount++;}if (c == COMMA && !insideQuote){string value = sb.ToString();value = UnQuoteUnEscape(value);result.Add(value);sb.Length = 0;continue;}sb.Append(c);}result.Add(sb.ToString());if (quoteCount % 2 != 0){return new string[0];}return result.ToArray();}