def firsts
import ezx@1.11.0.0/src/ws/joint.bend as Jointimport Base
import ezx@1.11.0.0/src/ledger/manifest.bend as M
import ezx@1.11.0.0/src/ledger/render.bend as Rend
119# every dependency, each name once, at its first declaration
120def firsts(ds: List<&2, M.Dep>) -> List<&2, M.Dep>:
121 match ds:
122 case []:
123 []
124 case +hd <> tl:
125 hd <> Rend.without(firsts(tl), M.dep.name(hd))