This curation tool allows curators to make precise assertions as to when functions were gained and lost during evolution and record the evidence (e.g. experimentally supported GO annotations and phylogenetic information including orthology) for those assertions.
The code was incorrectly repeatedly using the original array of nodes, rather than moving down the tree and checking the child nodes at each level