finished the node for basic functionality