first step to get rid of the "parent-pointers" in order to minimize memory consumption