node needs full rewrite