text: public Step(string name, Rule[] rules, int min, string[] suffixes){this.m_name = name;this.m_rules = rules;if (min == 0){min = int.MaxValue;foreach (Rule r in rules){min = Math.Min(min, r.m_min + r.m_suffix.Length);}}this.m_min = min;if (suffixes == null || suffixes.Length == 0){this.m_suffixes = null;}else{this.m_suffixes = new char[suffixes.Length][];for (int i = 0; i < suffixes.Length; i++){this.m_suffixes[i] = suffixes[i].ToCharArray();}}}