prompt:
Create an HTML simulation using Canvas to draw a recursive binary fractal tree.
Start with a single trunk and make the tree grow by recursively generating branches to the left and right. With each new branching level, progressively reduce the branch length and apply small random variations to the angles to make the structure look more natural.
The animation should show the tree growing gradually, starting from the trunk and progressing until the entire canopy is formed.
Once the growth is complete, make the entire tree gently sway, simulating natural movement caused by wind.