public int TrimRight(int startIdx, int endIdx) { int idx = endIdx; char c; for (; idx >= startIdx; --idx) { c = (char)detailChunks[idx].GetUnicodeEquivalent(text[idx]); if (!IsWS(c)) break; } return idx; }