handle errors
handle non existant nodes