Still not sure what level++ is supposed to do, but its not part of the refactored code. Did you happen to check / dbl.check if there were any differences when making a new CMSNode ?