States are endpos classes; each shows its len. Solid arrows are transitions, dashed gold arrows are suffix links. Watch the online extend and the clone/split when it fires.
extend creates a new state and walks suffix links, sometimes cloning a state to split an endpos class.Σ (len[v] − len[link[v]]). The clone/split fires when the found transition leads to a non-solid state
(len[q] ≠ len[p]+1). See junior.md and professional.md for proofs.