branching evolution