abstract to new node type