=LET(words,DROP(Attested Words in Pre‐Proto Languages::C:E,1,0),LET(sylndx,SORT(TEXTSPLIT(REDUCE("",SEQUENCE(ROWS(words),1),LAMBDA(str,rn,IF(str="",str,str&".")&REDUCE("",TEXTSPLIT(IF(ISBLANK(INDEX(words,rn,3)),IF(ISBLANK(INDEX(words,rn,1)),"@",INDEX(words,rn,1)),INDEX(words,rn,3)),,".",1),LAMBDA(instr,s,IF(instr="",instr,instr&".")&IF(s="@",s,s&"@")&rn)))),"@",".",0),1),LET(syls,CHOOSECOLS(sylndx,1),LET(uniqs,DROP(UNIQUE(syls),IF(INDEX(syls,1,1)="",1,0),0),SORT(MAKEARRAY(ROWS(uniqs),3,LAMBDA(r,c,LET(syl,INDEX(uniqs,r,1),LET(wrstart,XMATCH(syl,syls,0,1)-1,wrend,XMATCH(syl,syls,0,-1),SWITCH(c,2,COUNTIF(syls,"="&syl),3,REDUCE("",TAKE(DROP(sylndx,wrstart,1),wrend-wrstart,1),LAMBDA(acc,wr,IF(acc="",acc,acc&" | ")&INDEX(words,wr,2))),syl))))),2)))))