add node function