implementing node fiunctionality