preserve experiment
improved func signature + node managmt
added ndiff