now that all the bugs have been fixed, ptreeNode can be pure