def enhance(nodes, selection_span):
    """ Enhance resolution by descending into child nodes in the selected time span.
    """
    assert nodes
    new_nodes = []
    if len(nodes) == 1:
        new_nodes.extend(nodes[0].select_range(selection_span))
    else:
        assert len(nodes) > 1
        new_nodes.extend(nodes[0].select_range(selection_span))
        for node in nodes[1:-1]:
            new_nodes.extend(node.select_all())
        new_nodes.extend(nodes[-1].select_range(selection_span))
    return new_nodes
