// return longest common prefix of s an an entry of set sS longestCommonPrefixOfCISetAndString(S s, NavigableSet set) { if (set == null || s == null) null; S a = set.floor(s), b = set.higher(s); int n = Math.max(lCommonPrefixCI(a, s), lCommonPrefixCI(b, s)); ret takeFirst_string(s, n); }