def _find_longest_internal_edge(self, node):
max_length = -<NUM_LIT:1><EOL>max_edge = None<EOL>while node and not node.edge.rootedge:<EOL><INDENT>if node.edge.length > max_length:<EOL><INDENT>max_edge = node.edge<EOL>max_length = max_edge.length<EOL><DEDENT>node = node.parent_node<EOL><DEDENT>return max_edge<EOL>
return the node that has the longest branch length between the given
        node and the root

        Parameters
        ----------
        node: dendropy.Tree
            a node from the tree

        Returns
        -------
        The node that has the largest length between the node and the root_node