static ItIt flexMatchIC_iterator(S pat, S input) { L tokPat = javaTokNPunctuation_plusAsterisk(pat), tokInput = javaTokNPunctuation_plusAsterisk(input); ret flexMatchIC_iterator(pat, tokPat, tokInput); } static ItIt flexMatchIC_iterator(S pat, LS tokPat, LS tokInput) { L varIndices = flexMatchIC_getVarIndices(tokPat, tokInput); if (varIndices == null) ret emptyItIt(); ItIt spreadInputs = ai_spreadCertainIndices_2_iterator(tokPat, tokInput, varIndices); ret mapI_notNulls(tok -> getMatches(tokPat, pat), spreadInputs); }