Is there any way to place a rectangle so that its west edge is at a specific point, rather than its center?
example: I would like to take the rectangle containing ASDF and move it so its west edge lines up with the center of the gray circle (node R9).

#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
#let line_nodes(istart, istop, origin, dx, radius:1mm, linestroke:(), ..nodefmt) = {
/* Create nodes numbered nxy with "xy" from istart to istop,
* starting at the origin, with horizontal separation dx
*/
let nodename(i) = {
let si = str(i)
label("n" + ("00"+si).slice(-2))
}
for i in range(istart, istop+1) {
node((rel: (i*dx, 0cm), to: origin), shape: circle,
name: nodename(i),
radius: radius, ..nodefmt)
}
edge(nodename(istart), nodename(istop), stroke:linestroke)
}
#let mygreen = green.darken(50%)
#diagram(
edge-stroke: 0.3mm,
mark-scale: 80%,
line_nodes(0, 20, (0cm,0cm), 5mm, radius:0.8mm,
fill:mygreen, linestroke:mygreen),
node((rel:(45deg, 1.2cm), to:<n01>), name:"R9", shape: circle, stroke: black, fill:gray, radius:1mm),
node(pos:<R9.east>, align(left, block[ASDF]), width:4cm, stroke: 1pt+black),
node(pos:<n01.center>, shape: circle, radius: 1.2mm, stroke: mygreen),
node((-8mm,0cm), align(bottom, text([...], bottom-edge: "baseline", baseline:-0.25em, size: 20pt)),
),
edge(<n01>,<R9>,stroke:mygreen,bend:30deg)
)