move listener to dedicated place
don't use GetChildrenHack for Node RCs
set myValueChildren to empty list if no children
cleanup (too nested)
use ObjectLongHashMap to save memory