functional choose simulation tree