function lane(first, newer, {note="", y=0, color="red", opacity=0.2}={},
[...spans]=[]) {
const foHeight = screen2image(annotationsHeight)
const x0 = time2image(new Date(first))
const x1 = time2image(new Date(newer))
const y0 = screen2image(y)
const timespans = spans.map(([older, newer, {opacity=0.5}={}]) => {
const sx0 = time2image(new Date(older))
const sx1 = time2image(new Date(newer))
return html`<time style="width: ${sx1-sx0}px;--opacity:${opacity};"></time>`
})
return svg`
<foreignObject x=0 y=0 width=${baseimage.naturalWidth} height=${foHeight}>
<div class=lane style="--x:${x0}px;--y:${y0}px;--color:${color};">
<time style="width:${x1-x0}px;--opacity: ${opacity};"></time>${timespans}
<span>${note}</span>
</div></foreignObject>`
}