added node creation functionality