implementation of new variant .link rather than .node