static bool matchX(S pat, S s) { ret matchX(pat, s, null); } static bool matchX(S pat, S s, Matches m) { if (endsWith(pat, "...")) { pat = dropSuffixTrim("...", pat); if (startsWith(pat, "...")) ret find3(dropPrefixTrim("...", pat), s, m); else ret matchStart(pat, s, m); } if (startsWith(pat, "...")) ret matchEndX(pat, s, m); ret match(pat, s, m); }